我们正在使用 git 对我们的项目进行版本控制。在 OS X 下开发,我们想使用开发工具分发的FileMerge应用程序来显示 git 生成的差异:
如果我们理解正确,可以通过git difftool
.
根据来自不同来源的建议,我们将其添加到我们的全局 git 配置文件中:
[diff]
tool = opendiff
它适用于“逐个文件”差异。但是我们更喜欢在工具中一次加载目录差异,命令是git difftool --dir-diff
.
调用 directory diff 命令时,正确生成了不同文件的列表,但如果我们实际尝试打开一个文件,则双方都显示错误文件不存在。显然,这是因为opendiff几乎立即终止,因此 git 删除了发生比较的临时文件夹。
按照这个答案,我们将这些行添加到我们的全局 git 配置文件中:
[difftool "opendiff"]
cmd = /usr/bin/opendiff \"$LOCAL\" \"$REMOTE\" -merge \"$MERGED\" | cat
但它并没有解决文件不存在的问题(而且opendiff仍然几乎立即返回)。
这个用例的正确配置是什么?