将修订与工作副本进行比较时如何使用 WinMerge 而不是 TortoiseMerge

How to use WinMerge instead of TortoiseMerge when comparing a revision with the working copy

我喜欢使用 WinMerge 而不是 TortoiseMerge 和 TortoiseSVN 来比较文件的不同修订版之间的变化。我可以在 TortoiseSVN 设置中为大多数东西配置它(上下文菜单 > "TortoiseSVN" > "Settings" > "Diff Viewer"):

但是,当我想将特定修订版中的文件与工作副本中的文件进行比较时,它会使用 TortoiseMerge。要明白我的意思,请从工作副本转到 TortoiseSVN 日志查看器:右键单击工作副本文件夹,select "TortoiseSVN" > "Show log",右键单击先前的修订版和 select "Compare with working copy"。然后,在出现的 "file patches" 列表中双击感兴趣的文件。

在这些情况下,有什么办法让它使用 WinMerge 而不是 TortoiseMerge 吗?

抱歉,没有。因为 WinMerge 无法应用补丁文件。

当您执行 "Compare with working copy" 时,TortoiseSVN 在选定的修订版和工作副本之间创建一个统一的差异(也称为补丁)。然后它启动 TortoiseMerge,告诉它将该补丁应用于工作副本。这就是为什么在这种情况下启动 TortoiseMerge,而不是 WinMerge:它不是真正完成的差异,而是合并。