2012-07-13 73 views
0

當進行代碼審查我的方法是使用MELD來查看更改分支:混帳:查看更改爲分行

步驟1。使用Git日誌找到SHA1的第一個和最後提交的關於分支

 
git log --graph --oneline --all 

這將使類似:

 
    * fffffff Another commit to HEAD 
    * eeeeeee A commit to HEAD 
    | * ddddddd The last commit on branch MY_AWESOME_CHANGE 
    | * ccccccc Some work 
    | * bbbbbbb First commit on branch MY_AWESOME_CHANGE 
    |/ 
    * aaaaaaa Updated comments to explain aggregation of External Data 

步驟2。使用git difftool推出MELD來查看更改

 
git difftool aaaaaaa ddddddd 

我的問題是: 是否有更好的方法去第1步?以下問題提供了一種查找分支起點的方法:finding-a-branch-point-with-git。然後我可以使用「git的日誌」,找到SHA1最後提交的分支:

 
git log -1 MY_AWESOME_BRANCH 

但似乎矯枉過正,我不知道如果我失去了一些東西簡單。

回答

4

可以使用...(三聯點)語法git diffgit difftool,如:

git difftool master...experiment 

這樣做是對你示區別:

  • 合併鹼基masterexperiment
  • ...和experiment

.....含義是git loggit diff不同 - this other answer我的有一些圖表,示區別。

+0

謝謝 - 這是訣竅! – 2012-07-13 14:10:55

0

如果你在HEAD,然後

git merge --no-commit --no-ff MY_AWESOME_CHANGE 

會告訴你這被合併到您的HEAD的所有更改,並會相應地更新你的工作拷貝,但實際上不會提交合並。

+0

但是,這將會導致合併的結果,在這種情況下這是不可取的,特別是如果您已經對索引進行了一些更改。 – 2012-07-13 14:02:15

+0

是的,這就是我的意思,「將適當更新您的工作副本」。 – 2012-07-13 14:02:54