我偶尔会不小心写this
,这使我处于一个独立的头状态。我想知道为什么。这是"点故事":
push_impl
答案 0 :(得分:48)
这是此语法的简并形式,在gitrevisions(7)
手册页中描述:
<rev1>...<rev2>
Include commits that are reachable from either <rev1> or <rev2> but
exclude those that are reachable from both. When either <rev1> or
<rev2> is omitted, it defaults to HEAD.
注意最后一位,“省略<rev1>
或<rev2>
时,默认为HEAD”。这意味着写...
等同于HEAD...HEAD
。在git checkout
中使用时,最终会评估HEAD的提交ID。也就是说,你只是在做:
git checkout HEAD^{commit}