Git 结帐标签问题 - 标签未更改
Git checkout tag issues - tag is unchanged
我的 Git 存储库中有几个标签:
- release/20-000RC1
- release/21-000RC1
- release/22-000RC1
首先我查看 release/20-000RC1:
git checkout release/20-000RC1
git status
HEAD detached at release/20-000RC1
状态正确显示 release/20-000RC1
然后我去看看 release/21-000RC1:
git checkout release/21-000RC1
git status
HEAD detached at release/21-000RC1
状态正确显示release/21-000RC1
现在我终于结帐了 release/22-000RC1,并且...
git checkout release/22-000RC1
git status
HEAD detached at release/21-000RC1
nothing to commit, working directory clean
而不是 release/22-000RC1 "git status" 显示 release/21-000RC1.
我很困惑为什么在 release/22-000RC1 结帐后它在做状态时停留在 21-000RC1?
您是在查看 release/20-000RC1 还是在查看 git 哈希 f425ed7?如果您正在检查 git 散列,则您不在分支上。 "Detached head" 是一个非常伤人的消息,但它只是说 "hey, put a branch label here so you don't lose your work."
The merge is not the issue, but rather the fact that I do "git checkout release/22-000RC1" and then when I do "git status" it tells me that I'm on release/21-000RC1.
运行以下命令。他们将显示 sha1-s 的提交,连接到这些标签。输出是否相等?
git rev-parse release/21-000RC1
git rev-parse release/22-000RC1
如果它们相等,则标签在同一提交上。您签出到 release/22-000RC1
,这是一个标记为 release/21-000RC1
的提交,并且该标记是较早创建的,因此显示的是它的名称。
您可以使用以下命令列出所有标签,指向当前提交。
git tag --points-at HEAD
我的 Git 存储库中有几个标签:
- release/20-000RC1
- release/21-000RC1
- release/22-000RC1
首先我查看 release/20-000RC1:
git checkout release/20-000RC1
git status
HEAD detached at release/20-000RC1
状态正确显示 release/20-000RC1
然后我去看看 release/21-000RC1:
git checkout release/21-000RC1
git status
HEAD detached at release/21-000RC1
状态正确显示release/21-000RC1
现在我终于结帐了 release/22-000RC1,并且...
git checkout release/22-000RC1
git status
HEAD detached at release/21-000RC1
nothing to commit, working directory clean
而不是 release/22-000RC1 "git status" 显示 release/21-000RC1.
我很困惑为什么在 release/22-000RC1 结帐后它在做状态时停留在 21-000RC1?
您是在查看 release/20-000RC1 还是在查看 git 哈希 f425ed7?如果您正在检查 git 散列,则您不在分支上。 "Detached head" 是一个非常伤人的消息,但它只是说 "hey, put a branch label here so you don't lose your work."
The merge is not the issue, but rather the fact that I do "git checkout release/22-000RC1" and then when I do "git status" it tells me that I'm on release/21-000RC1.
运行以下命令。他们将显示 sha1-s 的提交,连接到这些标签。输出是否相等?
git rev-parse release/21-000RC1
git rev-parse release/22-000RC1
如果它们相等,则标签在同一提交上。您签出到 release/22-000RC1
,这是一个标记为 release/21-000RC1
的提交,并且该标记是较早创建的,因此显示的是它的名称。
您可以使用以下命令列出所有标签,指向当前提交。
git tag --points-at HEAD