手记

HEAD与哈希值

HEAD

HEAD 是当前分支引用的指针,它总是指向该分支上的最后一次提交。
当进行新的提交时,HEAD 就会自动向前移动,指向这个新提交。
进入 main 分支中并运行 git log,可以看到提交记录:

$ git checkout main
$ git log
commit 0961e2e4fb7b9c92c67bfe3936b8fb8793e1d4ed (HEAD -> main)
Author: zhanglianwei <zhanglianwei@meituan.com>
Date:   Wed Feb 21 16:09:29 2024 +0800

    第二次修改iss53

commit d556a63e53dfef1f1aa74a0e196cd31abaa79e5c
Author: zhanglianwei <zhanglianwei@meituan.com>
Date:   Wed Feb 21 16:08:18 2024 +0800

    修改iss53

commit 9f5bfba20b0448961111fe1cc621187b461284c4
Author: zhanglianwei <zhanglianwei@meituan.com>
Date:   Wed Feb 21 16:00:55 2024 +0800

    修改hotfix

commit ca5ebf0f7e0438c514b9039594e86b6bc1ef64e2
Author: zhanglianwei <zhanglianwei@meituan.com>
Date:   Tue Jan 30 16:24:42 2024 +0800
:

HEAD 默认指向当前分支上的最后一次提交,如果在尾部加上一个 ^,即 HEAD^指向上一次提交:

$ git show HEAD^
commit d556a63e53dfef1f1aa74a0e196cd31abaa79e5c
Author: zhanglianwei <zhanglianwei@meituan.com>
Date:   Wed Feb 21 16:08:18 2024 +0800

    修改iss53

diff --git a/README.md b/README.md
index 7027fce..b2752eb 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,2 @@
-// hello
\ No newline at end of file
+// hello
+// word
\ No newline at end of file
(END)

另一种方法是 ~HEAD~HEAD^ 是等价的,指向上一次提交。

区别在~后面加数字的时候, HEAD~2 代表 “上一次提交的上一次提交”:

$ git show HEAD~2 # 也可以写成 HEAD^^
commit 9f5bfba20b0448961111fe1cc621187b461284c4
Author: zhanglianwei <zhanglianwei@meituan.com>
Date:   Wed Feb 21 16:00:55 2024 +0800

    修改hotfix

diff --git a/README.md b/README.md
index e69de29..7027fce 100644
--- a/README.md
+++ b/README.md
@@ -0,0 +1 @@
+// hello
\ No newline at end of file
(END)

哈希值

0961e2e4fb7b9c92c67bfe3936b8fb8793e1d4ed 等就是提交的哈希值,用来唯一标识这次提交。
如果想通过哈希值获得对应的提交,只需要提供前几个字符就可以:字符数量不得少于 4 个,通常 7 到 10 个字符。

$ git show 9f5bfba
commit 9f5bfba20b0448961111fe1cc621187b461284c4
Author: zhanglianwei <zhanglianwei@meituan.com>
Date:   Wed Feb 21 16:00:55 2024 +0800

    修改hotfix

diff --git a/README.md b/README.md
index e69de29..7027fce 100644
--- a/README.md
+++ b/README.md
@@ -0,0 +1 @@
+// hello
\ No newline at end of file
(END)
0人推荐
随时随地看视频
慕课网APP