6
在git中,以下幾點有什麼區別?HEAD,HEAD ^和HEAD〜1和有什麼不同?
HEAD
HEAD^
HEAD~1
HEAD~2
以及它們如何涉及到master
?那麼有MASTER^
,MASTER~1
??
在git中,以下幾點有什麼區別?HEAD,HEAD ^和HEAD〜1和有什麼不同?
HEAD
HEAD^
HEAD~1
HEAD~2
以及它們如何涉及到master
?那麼有MASTER^
,MASTER~1
??
HEAD
是您當前分支上最近提交的同義詞,無論它是什麼。
HEAD^
(或HEAD^1
)表示HEAD
的第一個父項。合併提交具有多個父代,因此HEAD^2
指代HEAD
的第二個立即父級,該父級涉及創建HEAD
的合併。
HEAD~1
與HEAD~
相同。在這種情況下,它與HEAD^
同義。要看出差異,請考慮HEAD~2
是HEAD
的祖父母。使用~
可以追溯到幾代人。
如果您碰巧在master
分支上,那麼HEAD
指的是master。如果您在分支topic/foo
上,那麼它在您處於該分支時指向該分支。
使用git的情況很重要。 MASTER^
或MASTER~1
可能產生出錯的形式
fatal: ambiguous argument 'MASTER~1': unknown revision or path not in the working tree.
但master^
和master~1
是有意義。
請參閱git rev-parse
documentation以瞭解可以提交提交的多種方式的完整詳細信息。
請參閱語法參考,例如http://jk.gs/gitrevisions.html –
你可以在這裏找到信息http://stackoverflow.com/questions/2221658/whats-the-difference-between -head和頭型,混帳 – Robert