在一篇涉及相对提交引用的Udacity课程中,它说:
^表示父提交,〜表示第一个父提交
^和〜之间的主要区别在于从合并创建提交时.合并提交有两个父母.使用合并提交时,^引用用于指示提交的第一个父级,而^ 2用于指示第二个父级.第一个父项是运行git merge时所在的分支,而第二个父项是合并的分支.
根据课程,基于以下输出git log --graph --oneline
,SHA的提交f69811c
是HEAD~4^2
相对于(最顶部,带头指针)提交9ec05ca
.
所以HEAD~4本身意味着第一个父母,而^ 2意味着它也是第二个父母?这些东西不要相互矛盾吗?任何澄清都表示赞赏.
X~n
意思是:的n
祖先X
.
X^
意思是:的父母X
.这相当于X~1
.
如果X
有多个父级,则需要在使用该^
表示法时区分它们.那么X^1
第一个父母X^2
就是第二个父母,依此类推.X^
相当于X^1
(也相当于X~1
).
在您的示例中,从commit开始9ec05ca
,即HEAD
:
db7e87a
是HEAD~1
(或备选地HEAD^
).796ddb0
是HEAD~2
(或备选地HEAD^^
).1a56a81
是HEAD~4
(或者HEAD^^^^
,没有人会使用它).e014d91
,作为第一亲本的1a56a81
,是HEAD~5
或HEAD~4^
,或.HEAD~4^1
f69811c
,作为第二亲本的1a56a81
,是.HEAD~4^2
https://git-scm.com/docs/gitrevisions
归档时间: |
|
查看次数: |
771 次 |
最近记录: |