我在尝试使用git difftool (在本例中,是用于mac的opendiff )来可视化最新的git commit中所做的差异时遇到了麻烦。我不想为每一对已更改的文件启动opendiff,我只想启动一个比较整个目录的opendiff实例,所以我遵循了this answer的建议,即使用--dir-diff。我最终使用了这个命令:
git difftool HEAD^ HEAD --dir-diff问题是,当我启动这个命令时,opendiff显示没有差异(即使使用普通的diff会在多个文件中显示差异)。到底怎么回事?如何正确使用difftool?
发布于 2014-08-27 19:27:21
这些文件会被立即删除,因为opendiff (命令行工具)在启动FileMerge (图形用户界面工具)后会立即退出。您需要编写一个简短的包装器脚本,将left和right文件夹复制到(另一个)临时位置,并使用这些位置启动opendiff。
编辑:您可以配置一个自定义的difftool,它将直接启动FileMerge并等待它退出。将此代码添加到~/.gitconfig中
[difftool "fm"]
cmd = /Applications/Xcode.app/Contents/Applications/FileMerge.app/Contents/MacOS/FileMerge -left \"$LOCAL\" -right \"$REMOTE\"
path =https://stackoverflow.com/questions/24476612
复制相似问题