当前位置:   article > 正文

Git-HEAD 标记_git <<<<<<< head

git <<<<<<< head

当你执行 git branch (分支名称) 这条命令的时候,Git 怎么知道最后一次提交的 SHA-1 值呢?答案就是 HEAD 文件。HEAD 文件是一个指向你当前所在分支的引用标识符。这样的引用标识符——它看起来并不像一个普通的引用——其实并不包含 SHA-1 值,而是一个指向另外一个引用的指针。如果你看一下这个文件,通常你将会看到这样的内容:

  1. $ cat .git/HEAD
  2. ref: refs/heads/master

如果你执行 git checkout test,Git 就会更新这个文件,看起来像这样:

  1. $ cat .git/HEAD
  2. ref: refs/heads/test

当你再执行 git commit 命令,它就创建了一个 commit 对象,把这个 commit 对象的父级设置为 HEAD 指向的引用的 SHA-1 值。

你也可以手动编辑这个文件,但是同样有一个更安全的方法可以这样做:symbolic-ref。你可以用下面这条命令读取 HEAD 的值:

  1. $ git symbolic-ref HEAD
  2. refs/heads/master

你也可以设置 HEAD 的值:

  1. $ git symbolic-ref HEAD refs/heads/test
  2. $ cat .git/HEAD
  3. ref: refs/heads/test

但是你不能设置成 refs 以外的形式:

  1. $ git symbolic-ref HEAD test
  2. fatal: Refusing to point HEAD outside of refs/
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/666342
推荐阅读
相关标签
  

闽ICP备14008679号