我想从现有标记创建一个新的主分支。假设我有一个标签v1.0。如何从这个标签创建一个新的分支?
当前回答
在简单的用例中,我在一个fork上,我想从主项目存储库上的标记签出一个新的分支,这是唯一适合我的解决方案的例子(这里是上游)。
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
其他回答
我的分支列表(现在只有master)
我的标签列表(有三个标签)
从opus_codec标签切换到新的分支功能/编解码器
git checkout -b feature/codec opus_codec
我已经解决了以下问题 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
如果你只是想创建一个新的分支,而不是立即对它进行更改,你可以执行以下操作:
git branch newbranch v1.0
在写这个答案的时候,最新的git惯用用法是这个命令:
git switch -C branch tag
如果我们想要从具有相同名称的标记创建分支,情况就会变得有点问题。
在这种情况下,以及在类似的情况下,重要的是要知道:分支和标记实际上是.git/refs目录下的单行文本文件,我们可以使用它们在.git下面的路径显式引用它们。树枝在这里被称为“头”,使我们的生活更简单。
因此,refs/heads/master是主分支的真实的、显式的名称。而refs/tags/cica是cica标签的确切名称。
从名为cica的标记创建一个名为cica的分支的正确命令是:
git branch cica refs/tags/cica
推荐文章
- 在单个文件中重新启动/撤消冲突解决方案
- Visual Studio代码如何解决合并冲突与git?
- 无法推送到远程分支,无法解析到分支
- Git:如何将数据库重置为特定的提交?
- 如何在合并期间使用Git和命令行保存本地文件或远程文件?
- 能够用一个命令推到所有git遥控器?
- 重新基于Git合并提交
- 忽略已经签入目录的内容?
- 如何从windows cmd保存git提交消息?
- (Mac) -bash: __git_ps1:命令未找到
- 如何删除多个已删除的文件在Git仓库
- 使用vimdiff查看所有' git diff '
- 如何拉特定的目录与git
- 本地存储库中的文件与源文件之间的差异
- 将Git存储库内容移动到另一个存储库,保存历史记录