SourceTree 中的差异工具

Diff tool in SourceTree

我在 windows 中使用 SourceTree 作为 Git 客户端 7. 我遇到了冲突,为了解决问题,我按照建议单击了 Launch external merge tool。 window 很快弹出,之后什么也没有发生!

我刚刚在我的 Mac OS 上试了一下,它按预期显示了外部合并工具。

在工具 -> 选项 -> 差异 -> 外部差异/合并下拉框中,System Default 被选中。

我希望看到 diff 合并工具,但它从未出现在我的 windows 中,有人知道可能是什么原因吗?

您的系统上是否安装了 diff 工具?

在 Mac 中,当您安装 Xcode 时,您会得到一个名为 FileMerge 的 diff 工具,它简单但在大多数情况下足够了。你可以试试 WinMerge for Windows,我以前用过,很不错,而且开源。

您也可以免费试用 Perforce 的 P4 Merge tool

这两个选项都可以选择作为 SourceTree 中的 Diff/Merge 工具。

Beyond Compare 在 Mac 上也非常有效。它也支持Windows和Linux,但我没试过。

您可以从 https://www.scootersoftware.com/download.php 下载它,并确保在您第一次打开 Beyond Compare 时从顶部菜单栏安装命令行工具,因为如果没有安装命令行工具,Source Tree External Diff 将无法工作

我建议安装 Kdiff3 作为 diff 工具。这是我迄今为止看到的最好的。

然后将其设置为SourceTree上的diff工具:

  • SourceTree/Tools/Options/Diff

完整教程在此处进行了说明:http://oliverbusse.notesx.net/hp.nsf/tutorial.xsp?documentId=C6A

请注意,您必须更改两个 值才能使其正常工作。否则它对我来说失败了。

对于较新版本的 SourceTree,请单击 [⌘ + ,] 打开首选项,然后 在 Diff 选项卡下,您可以选择您的工具(kdiff3、p4merge 或默认设置为 filemerge)

这可能是由于 Sourcetree 无法确定“.gitconfig”文件位置。 即使您勾选 'Allow Sourcetree to modify your global Git config files' 复选框。可能不会更新。

尝试将系统环境变量中的 HOME 添加到“.gitconfig”文件位置的路径中。 例如 主页 C:\Users\XXX