J4c*_*4cK 18 git osx-leopard git-diff kdiff3 git-difftool
在.gitconfig
文件中我按如下方式设置了git diff:
[diff]
tool = kdiff3
[difftool "kdiff3"]
path = path_directory/kdiff3.app
Run Code Online (Sandbox Code Playgroud)
在此设置中,无法访问kdiff,当我在终端中运行时出现以下错误
>> git difftool
The diff tool kdiff3 is not available as 'Kdiff_local_software_path/kdiff3.app'
fatal: external diff died, stopping at modified_file
Run Code Online (Sandbox Code Playgroud)
你有什么建议可以解决这个问题吗?在我目前的设置Mac OS 10.10.5 git diff工具是git merge tool
我想用kdiff替换.
hjp*_*r92 18
kdiff3
通常位于以下位置:
/Applications/kdiff3.app/Contents/MacOS/kdiff3
Run Code Online (Sandbox Code Playgroud)
所以,试试吧
[difftool "kdiff3"]
path = /Applications/kdiff3.app/Contents/MacOS/kdiff3
Run Code Online (Sandbox Code Playgroud)
如果你安装了kdiff
使用brew
,那么你不需要difftool
在配置中使用git 1.8以上的参数.只需以下方法即可:
[diff]
tool = kdiff3
Run Code Online (Sandbox Code Playgroud)
如果您安装kdiff
了dmg文件,kdiff.app
则设置本地路径如下:
[difftool "kdiff3"]
path = directory_path_where_you_installed/kdiff3.app/Contents/MacOS/kdiff3
Run Code Online (Sandbox Code Playgroud)
kdiff3
安装和识别git
:$ type -a kdiff3
-bash: type: kdiff3: not found
Run Code Online (Sandbox Code Playgroud)
如果kdiff3
macOS 中未安装,git
还会显示以下消息:
$ git difftool --tool-help
$ # OR (both command would do)
$ git mergetool --tool-help
'git mergetool --tool=<tool>' may be set to one of the following:
emerge
opendiff
vimdiff
vimdiff2
vimdiff3
The following tools are valid, **but not currently available**:
...
gvimdiff3
kdiff3
meld
...
Some of the tools listed above only work in a windowed
environment. If run in a terminal-only session, they will fail.
Run Code Online (Sandbox Code Playgroud)kdiff3
,有很多方法可以做到:我个人更喜欢MacPort:
$ port search kdiff3
kdiff3 @0.9.98_4 (devel)
kdiff3 is a file comparing and merging tool.
$ sudo port install kdiff3
...installing process...
Run Code Online (Sandbox Code Playgroud)
在此之后,kdiff3
应该可用于 macOS 和git
$ type -a kdiff3
kdiff3 is /opt/local/bin/kdiff3
$ git difftool --tool-help
'git difftool --tool=<tool>' may be set to one of the following:
emerge
kdiff3
opendiff
...
Run Code Online (Sandbox Code Playgroud)git
:[diff]
tool = kdiff3
[difftool]
prompt = false
[merge]
tool = kdiff3
conflictstyle = diff3
Run Code Online (Sandbox Code Playgroud)小智 7
下载kdiff3并安装为app(将kdiff3拖放到您的应用程序中):http: //sourceforge.net/projects/kdiff3/files/kdiff3/0.9.98/kdiff3-0.9.98-MacOSX-64Bit.dmg/download
设置git配置工具如下,适用于MacBook Pro:
git config --global merge.tool kdiff3
和:
git config --global mergetool.kdiff3.cmd'/Applications/kdiff3.app/Contents/MacOS/kdiff3 $ BASE $ LOCAL $ REMOTE -o $ MERGED'
如其他答案中所述,您无需向 gitconfig 添加任何路径。这就是您需要在 .gitconfig 中配置的全部内容
[diff]
guitool = kdiff3
[merge]
tool = kdiff3
Run Code Online (Sandbox Code Playgroud)
假设您的机器上安装了自制软件:
brew update
brew tap caskroom/cask
brew cask install kdiff3
Run Code Online (Sandbox Code Playgroud)
解释:
设置使用桶
brew tap caskroom/cask
Run Code Online (Sandbox Code Playgroud)下载 kdiff3,将其移动到您的应用程序目录并将 kdiff3.sh 链接到 /usr/local/bin/kdiff3
brew cask install kdiff3
Run Code Online (Sandbox Code Playgroud)