に.gitconfig
ファイルgit diffを次のように設定しました。
[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
kdiff
を使用してbrew
をインストールした場合、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
あなたのマシンにhomebrewがインストールされていると仮定します:
brew update
brew tap caskroom/cask
brew cask install kdiff3
説明:
キャスクを使用するための設定
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 :
$ 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