我想从现有标签创建一个新的主分支。假设我有一个标签v1.0
。如何从这个标签创建一个新的分支?
答案 0 :(得分:741)
git checkout -b newbranch v1.0
答案 1 :(得分:78)
如果您只是想创建一个新分支而不立即更改它,您可以执行以下操作:
git branch newbranch v1.0
答案 2 :(得分:18)
我使用以下步骤从标签创建新的热修复分支。
语法
git checkout -b <新分支名称>
执行步骤。
git push -u origin NewBranchName
我希望这会有所帮助。
答案 3 :(得分:15)
我已解决了以下问题 1.从您的分支机构获取标签 2.写下面的命令
Example: git branch <Hotfix branch> <TAG>
git branch hotfix_4.4.3 v4.4.3
git checkout hotfix_4.4.3
或者您可以使用其他命令
git checkout -b <Hotfix branch> <TAG>
-b stands for creating new branch to local
一旦准备好了修补程序分支,现在是时候将该分支移动到github了,你可以通过编写下面的命令来实现这一点
git push --set-upstream origin hotfix_4.4.3
答案 4 :(得分:4)
如果我们想从具有相同名称的标签 中创建分支,情况将变得有些问题。
在这种情况下和类似情况下,重要的是要知道:分支和标记实际上是.git/refs
目录中的单行文本文件,我们可以使用{{1}下的路径明确引用它们。 }。分支在这里被称为“元首”,以使我们的生活更简单。
因此,.git
是refs/heads/master
分支的真实的显式名称。并且master
是名为refs/tags/cica
的标签的确切名称。
从名为cica
的标记创建名为cica
的分支的正确命令是:
cica
答案 5 :(得分:3)
答案 6 :(得分:1)
在用叉的简单用例中,唯一可行的解决方案的一个例子,我想在主存储库(此处为上游)的标签上签出新分支
git fetch upstream --tags
给我
From https://github.com/keycloak/keycloak
90b29b0e31..0ba9055d28 stage -> upstream/stage
* [new tag] 11.0.0 -> 11.0.0
然后我可以从该标签创建一个新分支并在其上签出
git checkout -b tags/<name> <newbranch>
git checkout tags/11.0.0 -b v11.0.0