- HEAD可以脱离branch而存在,但一定会最终指向某一个具体的commit。
- 切换branch时HEAD会自动切换至该branch最新一次的commit上。
- 分离HEAD的场景下切换至branch会使得在分离HEAD场景中做的修改丢失,所以一般情况下慎用分离HEAD。
- 由于HEAD一定会指向一个具体的commit,所以执行某些git命令是可以把HEAD当作是具体commit的别名。例如:
// 比较最新一次和上上次提交的差异。
git diff HEAD HEAD^^ // 在具体分支上HEAD就是指最新一次的提交
// 等价于
git diff HEAD HEAD~2
网友评论