HEAD^n和HEAD~n的区别

https://www.delftstack.com/zh/howto/git/git-3-head/
如果当前只有一个分支(使用rebase而非merge),则HEAD^nHEAD~n没有任何区别。

HEAD、HEADn

HEAD~n是沿当前分支往前n个提交,HEAD~1为前一个提交,可以省略为HEAD~

HEAD、HEADn

git checkout branch1
git merge branch2 branch3
git merge branch1 branch2 branch3 # 与上条命令一样

HEAD^n是当前节点的第n父节点,HEAD^1为当前分支的父节点,可以省略为HEAD^,为branch1上的父节点,HEAD^2为branch2的父节点,HEAD^3为branch3上的父节点,当前分支父节点总是HEAD^1
HEAD^^HEAD~2相同,与HEAD^2不同。

posted @ 2025-11-10 02:24  三月妻三月七  阅读(4)  评论(0)    收藏  举报