升级到MacOS Mojave后,我的git和opendiff停止工作(我的opendiff通常由git diff调用)。
我是able to get git working, by using the following two lines
xcode-select --install
sudo xcode-select -switch /Library/Developer/CommandLineTools但是opendiff和git diff仍然不能工作。似乎一种解决方案是安装Xcode应用程序,它很大(据说要占用硬盘10 up )。我检查了Spotlight并输入了FileMerge,能够找到它,它应该与opendiff相同,并且能够使用ps ax找到路径/Applications/Xcode.app/Contents/Applications/FileMerge.app/Contents/MacOS/FileMerge。但是,使用git diff时,我实际上使用了一个bash脚本来调用
#!/bin/sh
/usr/bin/opendiff "$2" "$5" -merge "$1" | cat(请参阅此github article about how to set up git-diff-cmd.sh)
因此,我将第二行改为:
/Applications/Xcode.app/Contents/Applications/FileMerge.app/Contents/MacOS/FileMerge "$2" "$5" -merge "$1" | cat但它不起作用。所以FileMerge是存在的,看起来opendiff就是FileMerge。可以让git diff在不安装整个Xcode应用的情况下工作吗?
发布于 2019-10-26 19:54:01
这可能看起来像是一个黑客攻击,实际上它似乎正在使用现有的XCode安装:
我做到了
cd /Applications/Xcode.app
find . -iname '*opendiff*'并且能够找到
./Contents/Developer/usr/bin/opendiff
./Contents/Developer/usr/libexec/git-core/mergetools/opendiff第一个文件是一个二进制文件,第二个文件实际上是一个脚本,因此我将我的bash脚本git-diff-cmd.sh更改为:
#!/bin/sh
/Applications/Xcode.app/Contents/Developer/usr/bin/opendiff "$2" "$5" -merge "$1" | catgit diff可以成功地调用opendiff进行可视化比较。
发布于 2019-10-26 21:14:40
在不需要安装整个XCode应用程序的情况下,git diff可以工作吗?
改为安装整个BBEdit应用程序。它体积小,效率高,视觉效果非常好。
https://stackoverflow.com/questions/58570465
复制相似问题