設定 - diffツールとMergeツール

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動

概要



Kdiff3のインストール

パッケージ管理システムでのインストール

パッケージ管理システムからKdeiff3をインストールする。

sudo zypper install kdiff3


ソースコードからインストール

Kdiff3の動作の必須要件として、Qt 5.6以降とKDE Frameworks 5.27以降が必要である。
また、ビルドするにあたり、gcc 5以降、cmake 3.1以降、ECM 1.8が必要となる。

まず、ビルドに必要な依存関係のライブラリをインストールする。

sudo zypper install gcc cmake extra-cmake-modules gettext-tool libqt5-qtbase-devel libkf5i18n-dev libkf5coreaddons-dev libkf5iconthemes-dev libkf5parts-dev libkf5doctools-dev libkf5crash-dev


次に、Kdiff3をGitからクローンして、コンパイルを行う。

git clone https://github.com/KDE/kdiff3 kdiff3-src

ここでは、ホームディレクトリにKdiff3ディレクトリを作成して、インストールを行う。

mkdir ~/Kdiff3
cmake -DCMAKE_INSTALL_PREFIX=$HOME/Kdiff3
make -j 8


Kdiff3をインストールする。

make install


Gitの設定

グローバル構成を使用して、GitにDiffツールとMergeツールを設定する。
ここでは、DiffツールとMergeツールにKdiff3を使用する。(環境によっては、--addオプションが必要になる)

git config --global merge.tool kdiff3
git config --global mergetool.kdiff3.path "/<Kdiff3のインストールディレクトリ>/kdiff3"
git config --global mergetool.kdiff3.trustExitCode false

git config --global diff.guitool kdiff3
git config --global difftool.kdiff3.path "/<Kdiff3のインストールディレクトリ>/kdiff3"
git config --global difftool.kdiff3.trustExitCode false


上記のコマンドを実行すると、ホームディレクトリにある.gitconfigファイルは以下のように設定される。
なお、上記のコマンドを実行せずに、.gitconfigファイルを編集してもよい。

vi ~/.gitconfig


[merge]
   tool = kdiff3
[mergetool "kdiff3"]
   path = /<Kdiff3のインストールディレクトリ>/kdiff3
   trustExitCode = false
[diff]
   guitool = kdiff3
[difftool "kdiff3"]
   path = /<Kdiff3のインストールディレクトリ>/kdiff3
   trustExitCode = false


trustExitCodeオプションの意味を記載する。
git-difftoolが呼び出すdiffツールによって出力されるエラーは、標準設定では無視される。
trustExitCodeを使用して呼び出されたdiffツールがゼロ以外の終了コードを返す場合、
呼び出されたツールの終了コードを転送することができる。