我试图找出哪个分支标签是从创建的?我有克隆标签,并运行以下命令,但它返回两个分支。标签可以从一个分支生成,我不知道为什么它返回两个分支。
我执行了以下命令
- git branch -a——包含v1.0.0.0.1
它返回两个分支。我创建了标签,为什么它返回两个分支?遥控器/产地/dev-genericrequest遥控器/产地/release-dev
标签只是对提交的引用,它与分支没有关系。一个提交可能是多个分支历史的一部分,也可能根本不是。
考虑:
- 我从一个空的repo开始。创建hello_world.txt并提交,这成为第一次提交到
master
分支。 - 我修改hello_world.txt文件并添加一些文本。我在
master
上做了另一个更改提交 - 我用标签
hi
标记最近的提交 - 我从当前状态创建一个名为
development
的新分支。此时,development
和master
分支都包含相同的提交历史 - 我继续向
master
和development
进行新的提交,但是我添加的tag
将显示在两个分支中,以及在标记的分支上或之后提交的任何新分支。
我敢肯定,如果您检查每个分支,您会发现您的标记引用的提交存在于两个分支的历史记录中。如果你把它想象成一个树枝,那么这个标签一定是在"分割"之前存在的。在两个分支之间发生。
git branch -a—包含v1.0.0.0.1
此命令用于查询包含v1.0.0.0.1
标签的所有git分支。它返回两个分支,因为它们都包含该标记指向的提交。
来自官方的"git分支"文档:
带——contains,只显示包含命名提交的分支(换句话说,其尖端提交的分支是名叫提交),