我問this問題很久以前,但我仍然不知道該怎麼辦〜^並在這個答案的意思是:什麼之間的區別〜^和Git中
如果你在談論遠程分支比如說,產地/主,你可以使用 〜^並指祖先承諾相對於分支相同 方式,您可以與當地的分支機構
有什麼區別?
我問this問題很久以前,但我仍然不知道該怎麼辦〜^並在這個答案的意思是:什麼之間的區別〜^和Git中
如果你在談論遠程分支比如說,產地/主,你可以使用 〜^並指祖先承諾相對於分支相同 方式,您可以與當地的分支機構
有什麼區別?
^
表示「(第一)父親」。 ~
是相似的,但它需要一個數字作爲參數,基本上意味着「祖先的」。因此,例如:
HEAD = latest commit
HEAD^ = HEAD~1 = parent of latest commit
HEAD^^ = HEAD~2 = grandparent of latest commit
HEAD~100 = 100th ancestor of latest commit
值得一提的是HEAD^2等標識符的含義不同(第二個父母的提交,其中有多個父母)。 – alkalinity
作爲the manpage狀態:
<rev>^, e.g. HEAD^, v1.5.1^0
到一個修改參數的後綴^意味着commit對象的第一個親本。^<n>
表示<n>
th父母(即<rev>^
等於<rev>^1
)。 [...]
<rev>~<n>, e.g. master~3
後綴~<n>
到一個修改參數是指提交對象,它是在指定的<n>
次生成祖先commit對象,僅跟隨第一父母。即<rev>~3
相當於<rev>^^^
,相當於<rev>^1^1^1
。
根據this document,波浪線(〜)引用提交(父母,祖父母,曾祖父母)的線性祖先,而插入符號(^)引用多個父母。在存在多個合併祖先的情況下,每個合併源將是父代。
[爲什麼不Zoidberg? (我的意思是,手冊頁!)](http://git-scm.com/docs/gitrevisions.html) –