答案 0 :(得分:70)
在Windows上,一个好的3向差异/合并工具仍然是kdiff3(WinMerge,目前仍然是双向的,等待WinMerge3)
请参阅“How do you merge in GIT on Windows?”和this config。
7年后(2018年8月)更新:Artur Kędzior提及in the comments:
如果你们碰巧使用Visual Studio(社区版是免费的),请尝试随附的工具:vsDiffMerge.exe
。它非常棒且易于使用。
答案 1 :(得分:70)
我也使用过Meld。它是用python编写的。 Windows的官方安装程序运行良好。
安装它,然后将其设置为默认的mergetool。
$ git config --global merge.tool "meld"
$ git config --global mergetool.meld.path "C:\Program Files (x86)\Meld\Meld.exe"
如果使用GUI GIT客户端,请尝试以下(SourceTree说明,相应调整)
External Diff Tool
中,选择自定义C:\Program Files (x86)\Meld\meld.exe
,在Arguments中输入$LOCAL $REMOTE
Merge Tool
中,选择自定义C:\Program Files (x86)\Meld\meld.exe
,在Arguments中输入$LOCAL $MERGED $REMOTE
答案 2 :(得分:27)
我一直在使用P4Merge,它是免费的跨平台。
答案 3 :(得分:25)
我不知道好的免费工具,但winmerge is ok(ish)。自1999年以来,我一直在使用beyond compare工具并且不能对它进行足够的评价 - 它的成本约为50美元,而且这项投资已经为我自己节省了超出我想象的时间。
如果工具非常好,有时候应该支付工具。
答案 4 :(得分:15)
答案 5 :(得分:1)
另一个免费选项是jmeld:http://keeskuip.home.xs4all.nl/jmeld/
这是一个java工具,因此可以在多个平台上使用。
但是(正如他在答案中提到的Preet), free 并不总是最好的选择。我遇到的最好的差异/合并工具是Araxis Merge。标准版的售价为99欧元,并不是那么多。
他们还为如何将Araxis与msysGit集成提供documentation。
如果您想坚持使用免费工具,JMeld非常接近Araxis。
答案 6 :(得分:-1)
使用Git For Windows有什么问题? 从回购视图中,您可以看到(在顶部)分支的图标,如果您点击管理,您可以以非常直观和方便的方式拖放。