2010-04-20 50 views

回答

1

您还需要添加一节介绍如何调用Kompare。我不知道Kompare,所以我不知道在命令行中应该是什么样子(无担保为kompare.args线),但它应该是这样的:

[merge-tools] 
kompare.executable = C:\<path...>\kompare.exe 
kompare.args = $base $local $other -o $output 
kompare.priority = 1 
kompare.gui = True 
kompare.binary = True 

如果没有检测到合并正确地,您可能需要添加

kompare.checkconflicts = True 
kompare.checkchanged = True 
+2

kompare.args是完全错误的;这些对kdiff3来说工作得很好,但对kompare没有意义。例如,-o意味着“这将打开URL1并期望它是差异输出。”显然情况并非如此。最重要的是,kompare不会做3路合并,所以给3个文件没有意义。 – scvalex 2010-07-27 22:22:35

+0

@scvalex:感谢您的信息。正如我写的,我不知道Kompare(并且在我的答案被接受时没有进一步研究)。当然,如果无论如何都不能完成3路合并,我认为在Mercurial中使用它并不是一个好主意。我仍然想纠正我的答案 - 你能帮助我吗? – 2010-07-28 06:28:07

4

之前发布的kompare.args可能不会工作。我很难使用Kompare进行合并,特别是3路合并(这是首选和安全的)。 顺便说一句,大多数其他选项默认情况下启用,我相信,但你可以验证:hg showconfig merge-tools

你最好使用kdiff3。因为你在Ubuntu Intrepid上,kdiff3被错误地从回购站删除 - 但你可以很容易地从源代码编译。

+0

是的,我最终也去了kdiff3。 – hsribei 2010-04-21 23:00:42

+0

那么你是如何为mercurial配置kdiff3的? – 2011-02-06 14:14:28