Git 进阶- 小贴士:祖先引用(~ or ^ ?)

祖先引用是另一种指明提交的方式(可以直接用 commit 的 Hash 值来引用)。如果在引用的尾部加一个^ ,Git 会解析为该引用的上一个提交。最后一次提交是 HEAD,那么 HEAD^ 就是上一次提交(父提交),当然也可以在 Hash 值后面使用这种写法。

但是在合并的时候,一个提交会有多个父提交,可以用 ^2 表示引用的第二父提交。

~^ 一样也可以指明祖先提交,同样是指明第一父提交,那么 HEAD~HEAD^是等价的,区别是在后面加数字的时候。

HEAD~2 表示「第一父提交的第一父提交」,Git 会根据指定的次数获取对应的第一父提交。

可以对照这个图,理解其中表示方法。

如果想自己学习和确认的话,我还是推荐这个链接 Git 在线学习, 之前在介绍 rebase 的用法就推荐过这个在线工具。

本篇篇幅不长,大概演示怎么验证引用吧
可创建个分支,commit 几次,再 merge 通过 git show 来查看指定的引用日志,比如在 main 分支下查看了 HEADHEAD~。通过实践来加深理解。

你可能感兴趣的:(Git 进阶- 小贴士:祖先引用(~ or ^ ?))