相对引用
通过哈希值指定提交记录很不方便,所以 Git 引入了相对引用。使用相对引用的话,你就可以从一个易于记忆的地方(比如bugFix 分支或 HEAD)开始计算。
下面介绍两个简单的用法:
· 使用 ^ 向上移动 1 个提交记录
· 使用 ~<num> 向上移动多个提交记录,如~3
1.操作符 (^)
把这个符号加在引用名称的后面,表示让 Git 寻找指定提交记录的父提交。
所以 master^ 相当于“master 的父节点”。
master^^ 是 master 的第二个父节点
演示操作:切换到 master 的父节点
$ git checkout master^
也可以将 HEAD 作为相对引用的参照。下面咱们就用 HEAD 在提交树中向上移动几次。
我们可以一直使用 HEAD^ 向上移动。
演示:
$ git checkout C3
$ git checkout HEAD^
$ git checkout HEAD^
$ git checkout HEAD^
2.操作符(~)
如果想在提交树中向上移动很多步的话,敲那么多 ^
貌似也挺烦人的,Git 当然也考虑到了这一点,于是又引入了操作符 ~
。
该操作符后面可以跟一个数字(可选,不跟数字时与 ^
相同,向上移动一次),指定向上移动多少次。下面实际操作
用 ~<num> 一次后退四步,这种方法比前面的简单了不少。
$ git checkout HEAD~4