如何在 Mac OS 中设置 kdiff3?
How to setup kdiff3 in Mac OS?
在.gitconfig
文件中,我设置了 git 差异如下:
[diff]
tool = kdiff3
[difftool "kdiff3"]
path = path_directory/kdiff3.app
在此设置中,kdiff 不可访问,当我在终端 运行
中时,我得到以下 error
>> git difftool
The diff tool kdiff3 is not available as 'Kdiff_local_software_path/kdiff3.app'
fatal: external diff died, stopping at modified_file
你有什么建议可以解决这个问题吗?在我当前的设置中 Mac OS 10.10.5 git diff 工具是 git merge tool
我想用 kdiff 替换它。
kdiff3
一般位于以下位置:
/Applications/kdiff3.app/Contents/MacOS/kdiff3
所以,试试
[difftool "kdiff3"]
path = /Applications/kdiff3.app/Contents/MacOS/kdiff3
如果您使用 brew
安装了 kdiff
,那么从 git 1.8 开始,您不需要在配置中使用 difftool
参数。只需以下内容即可:
[diff]
tool = kdiff3
如果您安装了 kdiff
将 dmg 文件安装到 kdiff.app
然后设置您的本地路径如下:
[difftool "kdiff3"]
path = directory_path_where_you_installed/kdiff3.app/Contents/MacOS/kdiff3
下载 kdiff3 并安装为应用程序(将 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
假设您的计算机上安装了自制软件:
brew update
brew tap caskroom/cask
brew cask install kdiff3
解释:
设置使用 cask
brew tap caskroom/cask
下载 kdiff3,将其移动到您的应用程序目录并将 kdiff3.sh 链接到 /usr/local/bin/kdiff3
brew cask install kdiff3
首先检查kdiff3
是否安装并被git
识别:
$ type -a kdiff3
-bash: type: kdiff3: not found
如果 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.
那我们就应该安装kdiff3
,方法有很多种:
- 通过使用 MacPort
- 通过使用 Homebrew
- 通过下载 SourceForge dmg package
- 从源代码构建
- 等等
个人比较喜欢MacPort:
$ port search kdiff3
kdiff3 @0.9.98_4 (devel)
kdiff3 is a file comparing and merging tool.
$ sudo port install kdiff3
...installing process...
在此之后,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
...
最后,确保git
配置正确:
[diff]
tool = kdiff3
[difftool]
prompt = false
[merge]
tool = kdiff3
conflictstyle = diff3
如果您使用 brew 安装 kdiff3,这里是更新的命令
酿造水龙头homebrew/cask
brew 安装 kdiff3 --cask
在.gitconfig
文件中,我设置了 git 差异如下:
[diff]
tool = kdiff3
[difftool "kdiff3"]
path = path_directory/kdiff3.app
在此设置中,kdiff 不可访问,当我在终端 运行
中时,我得到以下 error>> git difftool
The diff tool kdiff3 is not available as 'Kdiff_local_software_path/kdiff3.app'
fatal: external diff died, stopping at modified_file
你有什么建议可以解决这个问题吗?在我当前的设置中 Mac OS 10.10.5 git diff 工具是 git merge tool
我想用 kdiff 替换它。
kdiff3
一般位于以下位置:
/Applications/kdiff3.app/Contents/MacOS/kdiff3
所以,试试
[difftool "kdiff3"]
path = /Applications/kdiff3.app/Contents/MacOS/kdiff3
如果您使用 brew
安装了 kdiff
,那么从 git 1.8 开始,您不需要在配置中使用 difftool
参数。只需以下内容即可:
[diff]
tool = kdiff3
如果您安装了 kdiff
将 dmg 文件安装到 kdiff.app
然后设置您的本地路径如下:
[difftool "kdiff3"]
path = directory_path_where_you_installed/kdiff3.app/Contents/MacOS/kdiff3
下载 kdiff3 并安装为应用程序(将 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
假设您的计算机上安装了自制软件:
brew update
brew tap caskroom/cask
brew cask install kdiff3
解释:
设置使用 cask
brew tap caskroom/cask
下载 kdiff3,将其移动到您的应用程序目录并将 kdiff3.sh 链接到 /usr/local/bin/kdiff3
brew cask install kdiff3
首先检查
kdiff3
是否安装并被git
识别:$ type -a kdiff3 -bash: type: kdiff3: not found
如果
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.
那我们就应该安装
kdiff3
,方法有很多种:- 通过使用 MacPort
- 通过使用 Homebrew
- 通过下载 SourceForge dmg package
- 从源代码构建
- 等等
个人比较喜欢MacPort:
$ port search kdiff3 kdiff3 @0.9.98_4 (devel) kdiff3 is a file comparing and merging tool. $ sudo port install kdiff3 ...installing process...
在此之后,
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 ...
最后,确保
git
配置正确:[diff] tool = kdiff3 [difftool] prompt = false [merge] tool = kdiff3 conflictstyle = diff3
如果您使用 brew 安装 kdiff3,这里是更新的命令
酿造水龙头homebrew/cask
brew 安装 kdiff3 --cask