Git版本:2.21.0.windows.1
环境:薄荷味
已编辑:请注意,这个问题与(IMHO)并不完全相同: Git - head (lowercase) vs HEAD (uppercase)
因为我不是在要求“概念”,而是要求git checkout head
和git checkout HEAD
的行为,所以要做不同的事情。
但是,阅读所有答案后,最后一个答案就会显示出适合我的问题的正确答案。无论如何,混合checkout+head/HEAD
是一种奇怪的行为。
原始问题文本:
为什么这些命令不同?
如果我写head / HEAD,它们两个都关闭了东西,但确实不同:
git checkout HEAD
比
git checkout head
第一个将我带到我所在的同一个“地方”。如果我在master分支中,它什么也不做(它将我带到同一个地方)。
但是对于第二个(头部小写),它将带我到我已经位于的提交(分离的HEAD)。 如果我在master分支中,它将使我处于相同的提交中,但处于分离状态。
我在文档中找不到任何提示。