^n和~n的区别
^n 表示当前head的从左到右第几个分支祖先:
例如当前提交如果是br1,br2,和br3 merge的。那么^2 就是br2,^1就是br1
~n 表示当前head从上到下第几个提交
例如当前提交上一个提交134e,上上一个提交是43e1,那么~2就是43e1 == ^^
^n 表示当前head的从左到右第几个分支祖先:
例如当前提交如果是br1,br2,和br3 merge的。那么^2 就是br2,^1就是br1
~n 表示当前head从上到下第几个提交
例如当前提交上一个提交134e,上上一个提交是43e1,那么~2就是43e1 == ^^