2010-07-29 121 views
9

>>git difftool branch1 branch2打開我的difftool(超越比較:BC)與分支之間有差異的每個文件。 我必須在每個文件後關閉BC才能讓它重新打開下一個文件。超越比較Diff 2分支

BC可以區分整個目錄和多個文件。

有沒有辦法讓git difftool同時打開所有文件,或同時對整棵樹進行比較?

+0

您使用的是3.0版嗎?我只問,因爲它有一個標籤界面。 – NinjaCat 2010-07-29 19:17:16

+0

是的,我是。我希望它顯示標籤中的所有差異文件,或比較目錄結構模式。 – 2010-08-01 11:35:31

回答

13

從git v1.7.11開始,您可以使用git difftool --dir-diff執行目錄diff。

下面的答案適用於v1.7.11之前的git安裝。


這個問題與BC沒有關係,而是與git的工作方式有關。 幸運的是,在這個URL的解決方案 - git-diffall

+0

確實,這是一個Git問題。我試過了,但我無法在Windows上正常工作。腳本運行良好(在Bash shell中),BC在正確的位置打開,但tmp文件似乎不存在。 – 2011-06-02 07:21:24

+0

最後,我爲這個http://goo.gl/YPd2s解決了問題。它從您發送的鏈接鏈接。那謝謝啦! – 2011-06-02 07:27:08

+0

有趣的是,它在Windows和osx上運行良好 – 2011-06-17 01:41:01

7

我以前these commands to set Beyond Compare 4的差異(儘管你在他們看到BC3)/合併工具:

混帳配置--global diff.tool BC3
混帳配置--global difftool.bc3.path 「C:/ Program Files文件/超越比較4/bcomp.exe」

混帳配置--global merge.tool BC3
混帳配置--global mergetool.bc3.path 「C:/ Program Files/Beyond Compare 4/bcomp.exe」

然後我比較了這兩個分支,其中「oldbranchname」和「newbranchname」是我想比較的兩個分支的名稱。

混帳difftool -d --tool = BC3 oldbranchname newbranchname

我得到的,就好像我比較兩個文件夾具有無法比擬的文件夾視圖。唯一值得注意的是它不會在比較中顯示相同的文件,但這並沒有讓我困擾。

+1

是的,'-d'選項可以做到這一點,它相當於'--dir-diff'哪些工作。 – 2016-08-31 06:49:34

+1

在Mac上,我發現我必須更改選項以遵循符號鏈接 – 2017-09-01 23:37:15