git - 签出 Git 标签,但 HEAD 指的是分支
问题描述
当我 git checkout 到 Git 标签时,HEAD 指的是我创建标签的分支。
这是正常的吗?
或者我在哪里做错了?
任何解释将不胜感激。谢谢
解决方案
当我 git checkout 到 Git 标签时,HEAD 指的是我创建标签的分支。这是正常的吗?
是的
每当您使用git checkout
git 时,请更改存储库的 HEAD。HEAD
提交的简单引用。
如果您的提交不是当前分支中的最新提交,您将处于分离的 HEAD中。
在此处阅读有关分离的 HEAD 的更多信息: 如何将 HEAD 移回以前的位置?(分离的头)
Git 将您的提交存储在一个列表中,就像一个序列。这意味着每个提交都指向存储在提交的父属性中的上一个提交。当您签出标签时,它通常是过去的“旧”提交。这会导致 HEAD 分离。
... HEAD 指的是我创建标签的分支
每当您签出 git 标签时,它都不会指向创建标签的分支,因为如果您将该分支合并到其他分支,则该标签可以位于多个分支中。
Git 处于分离的 HEAD 状态,您不在任何分支上,而是处于分离的 HEAD
推荐阅读
- javascript - JSON.parse().replace() 提供与 str.replace() 不同的结果
- java - 如何在 Java 流的 Lambda 表达式中使用反射?
- python - 如何识别 Python 中是否至少有一个大写字母?
- python - 继承和 __init__
- c# - 是否可以设置 dotnet watch run 以替换更改的 DLL 而无需重新启动整个过程?
- python - 一定范围内的随机列表
- c++ - 我如何编写一个程序来计算与我输入的另一个数字不同的数字的数字的乘积?
- python - 在 Python 中动态构建 json
- ios - 我如何知道/获取我的 iOS 应用程序支持的方向列表?
- r - 摘要格式