如何从标签创建新分支?


Answers:


876

哇,这比我想象的要容易:

git checkout -b newbranch v1.0

53
正确。请注意,您也可以使用git reset --hard v1.0
wadesworld 2012年

3
如果由于“ <tag>不是有效的提交”或类似的错误(通常是在共享存储库上使用)而
导致此操作不起作用

6
@wadesworld的建议可能有效,但如果有人读过此书,并且不确定100%重置master分支意味着什么,请不要这样做
内森·朗

这是一个更好的答案,我发现在这里- stackoverflow.com/a/35979751/3145960
雷阿兹穆尔希德

101

如果只想创建一个新分支而不立即更改它,则可以执行以下操作:

git branch newbranch v1.0

6
我认为这应该是公认的答案,因为它确实满足了要求。接受的答案会执行问题中未提及的其他内容。
哈维尔·瓦兹克斯

40

我使用以下步骤从标签创建新的热修复分支。

句法

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

步骤去做。

  1. git checkout -b NewBranchName v1.0
  2. 更改pom /发布版本
  3. 阶段变更
  4. git commit -m“为修补程序分支更新pom版本”
  5. 最后,将您新创建的分支推送到远程存储库。
git push -u origin NewBranchName

我希望这会有所帮助。


17

我已经解决了以下问题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 

一旦准备好您的hotfix分支,是时候将该分支移至github了,可以通过编写以下命令来实现

git push --set-upstream origin hotfix_4.4.3

5

如果我们想从具有相同名称的标签创建分支,则情况将变得有些问题。

在这种情况下以及类似的情况下,重要的是要知道:分支和标记实际上是.git/refs目录中的单行文本文件,我们可以使用下面的路径明确引用它们.git。分支在这里被称为“元首”,以使我们的生活更加简单。

因此,refs/heads/mastermaster分支的真实,显式名称。和refs/tags/cica是名为的标记的确切名称cica

cica从名为标签的名称创建分支的正确命令cica是:

git branch cica refs/tags/cica

4

我的分支机构列表(现在仅

分支机构清单

我的标签列表(具有三个标签)

标签清单

opus_codec标签切换到新的分支功能/编解码器

git checkout -b feature/codec opus_codec

切换到分支


2
如果文本复制粘贴就足够了,请不要使用屏幕截图。
彼得-恢复莫妮卡
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.