How to create a new branch from a tag?

后端 未结 7 2131
不思量自难忘°
不思量自难忘° 2020-12-12 08:56

I\'d like to create a new master branch from an existing tag. Say I have a tag v1.0. How to create a new branch from this tag?

相关标签:
7条回答
  • 2020-12-12 09:17

    Wow, that was easier than I thought:

    git checkout -b newbranch v1.0
    
    0 讨论(0)
  • 2020-12-12 09:17

    The situation becomes a little bit problematic if we want to create a branch from a tag with the same name.

    In this, and in similar scenarios, the important thing is to know: branches and tags are actually single-line text files in .git/refs directory, and we can reference them explicitly using their pathes below .git. Branches are called here "heads", to make our life more simple.

    Thus, refs/heads/master is the real, explicit name of the master branch. And refs/tags/cica is the exact name of the tag named cica.

    The correct command to create a branch named cica from the tag named cica is:

    git branch cica refs/tags/cica
    
    0 讨论(0)
  • 2020-12-12 09:18

    I have resolve the problem as below 1. Get the tag from your branch 2. Write below command

    Example: git branch <Hotfix branch> <TAG>
        git branch hotfix_4.4.3 v4.4.3
        git checkout hotfix_4.4.3
    

    or you can do with other command

    git checkout -b <Hotfix branch> <TAG>
    -b stands for creating new branch to local 
    

    once you ready with your hotfix branch, It's time to move that branch to github, you can do so by writing below command

    git push --set-upstream origin hotfix_4.4.3
    
    0 讨论(0)
  • 2020-12-12 09:26

    If you simply want to create a new branch without immediately changing to it, you could do the following:

    git branch newbranch v1.0
    
    0 讨论(0)
  • 2020-12-12 09:28

    An exemple of the only solution that works for in the simple usecase where I am on a fork and I want to checkout a new branch on a tag that is on the main repository ( here upstream )

    git fetch upstream --tags
    

    Give me

    From https://github.com/keycloak/keycloak
       90b29b0e31..0ba9055d28  stage      -> upstream/stage
     * [new tag]    11.0.0     -> 11.0.0
    

    Then I can create a new branch from this tag and checkout on it

    git checkout -b tags/<name> <newbranch>

    git checkout tags/11.0.0 -b v11.0.0
    
    0 讨论(0)
  • 2020-12-12 09:36

    I used the following steps to create a new hot fix branch from a Tag.

    Syntax

    git checkout -b <New Branch Name> <TAG Name>
    

    Steps to do it.

    1. git checkout -b NewBranchName v1.0
    2. Make changes to pom / release versions
    3. Stage changes
    4. git commit -m "Update pom versions for Hotfix branch"
    5. Finally push your newly created branch to remote repository.
    git push -u origin NewBranchName
    

    I hope this would help.

    0 讨论(0)
提交回复
热议问题