簡體   English   中英

當前版本的git diff與分支提交

[英]git diff of current version with branching commit

我必須檢查別人在他自己的分支機構中完成的代碼。 他幾周前從我們的總公司分支了。

從那以后,兩個分支機構都分歧了,我需要確定他進行了哪些更改。

如何識別“分支提交”(他從中分支的提交)並與當前版本VS的提交進行比較?

識別分支提交的最佳方法是使用merge-base:

git merge-base main-branch other-branch

但是git提供了其他一些替代方法來滿足您的需求。 如果要查看當前分支引入的更改,可以使用以下語法:

git diff main-branch...HEAD

此語法將計算main-branchHEAD之間的merge-base,然后向您顯示HEAD引入的所有更改。 如果您當前不在要檢查的分支上,則只需將HEAD替換為分支的名稱即可:

git diff main-branch...other-branch

ProGit也對此進行了描述

要查看git log分支引入的更改,您想使用兩個點表示法( .. ):

git log main-branch..HEAD

這將向您顯示當前分支引入的不在主分支上的提交。

帶有git log的...表示法將顯示自合並基礎以來在任一分支上引入的所有提交,這不是您想要的。

該信息非常有用:“分支”提交是“審閱”提交和“主”提交的最后一個共同祖先。

gitk之類的工具可以圖形化地顯示這種信息。 您可以輕松地從中復制提交哈希,以供命令行工具使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM