SYNOPSIS
git difftool [<options>] [<commit> [<commit>]] [--] [<path>…]
DESCRIPTION
git difftool は、一般的なdiffツールを使用してリビジョン間でファイルを比較および編集できるようにするGitコマンドです。 git
difftool は git diff のフロントエンドであり、同じオプションと引数を受け入れます。 git-diff(1)
を参照してください。
OPTIONS
-
-d -
--dir-diff -
変更したファイルを一時的な場所にコピーし、それらに対してディレクトリdiffを実行します。 このモードは、diffツールを起動する前にプロンプトを表示することはありません。
-
-y -
--no-prompt -
diffツールを起動する前にプロンプトを表示しないでください。
-
--prompt -
diffツールを呼び出す前にプロンプトを表示します。 これがデフォルトの振る舞いです。 オプションは、構成設定を上書きするために提供されています。
-
--rotate-to=<file> -
指定のパスのdiffの表示から開始します。これ以前のパスは最後の後ろに回されます(訳注:
git difftoolで a,b,c,d,e の場合、--rotate-to=cとすると、 c,d,e,a,b,c の順になる) -
--skip-to=<file> -
その前のすべてのパスをスキップして、指定されたパスのdiffの表示から開始します(訳注: a,b,c,d,e の場合、
--skip-to=cは c,d,e) -
-t <tool> -
--tool=<tool> -
<tool> で指定されたdiffツールを使用します。 有効な値には emergeやkompareやmeldやvimdiffも含まれています。有効な<tool>設定のリストについては、
git difftool --tool-helpを実行してください。diffツールが指定されていない場合、
git difftoolは構成変数diff.toolを使用します。 構成変数diff.toolが設定されていない場合、git difftoolは適切なデフォルトを選択します。あなたは構成変数
difftool.<tool>.pathを設定することにより、ツール(<tool>)へのフルパスを明示的に指定できます。 たとえば、difftool.kdiff3.pathを設定することにより、kdiff3への絶対パスを構成できます。 それ以外の場合、git difftoolは、ツールがPATH上にあると想定します。既知のdiffツールの1つを実行する代わりに、構成変数
difftool.<tool>.cmdで、呼び出すコマンドラインを指定することにより、git difftoolをカスタマイズして代替プログラムを実行できます。このツールを使用して(
-tまたは--toolオプションまたはdiff.tool構成変数を介して、)git difftoolを呼び出すと、構成されたコマンドラインが次の変数を使用して呼び出されます。$LOCALは、diff pre-imageの内容を含む一時ファイルの名前に設定され、$REMOTEは、diff post-imageの内容を含む一時ファイルの名前に設定されます。$MERGEDは、比較されるファイルの名前です。$BASEは、カスタムマージツールコマンドとの互換性のために提供されており、$MERGEDと同じ値です。 -
--tool-help -
--toolで使用できるdiffツールのリストを出力します。 -
--[no-]symlinks -
git difftoolのデフォルトの動作は、--dir-diffモードで実行したときに、作業ツリーへのシンボリックリンクを作成することです。つまり、比較の右側は、作業ツリーのファイルそのものです。--no-symlinksを指定すると、代わりにコピーを作成するようにgit difftoolに指示します。--no-symlinksはWindowsのデフォルトです。 -
-x <command> -
--extcmd=<command> -
diffを表示するためのカスタムコマンドを指定します。
git-difftoolは、構成されたデフォルトを無視し、このオプションが指定されている場合は$command $LOCAL $REMOTEを実行します。 さらに、`$BASE`が環境に設定されます。 -
-g -
--[no-]gui -
git-difftoolが-gまたは--guiオプションで呼び出されると、デフォルトのdiffツールがdiff.toolではなく設定されたdiff.guitool変数から読み取られます。--no-guiオプションを使用して、この設定を上書きできます。diff.guitoolが設定されていない場合、ツールが見つかるまで、merge.guitool、diff.tool、merge.toolの順でフォールバックします。 -
--[no-]trust-exit-code -
git-difftoolは、各ファイルで個別にdiffツールを呼び出します。diff分ツールによって報告されたエラーは、デフォルトでは無視されます。呼び出されたdiffツールがゼロ以外の終了コードを返したときに--trust-exit-code`を使用して、 `git-difftoolを終了させます。git-difftoolは、--trust-exit-codeが使用されている場合、呼び出されたツールの終了コードを転送します。
サポートされているオプションの完全なリストについては、 git-diff(1) を参照してください。
CONFIGURATION
同等のdifftoolが定義されていない場合、 git difftool は git mergetool 構成変数にフォールバックします。
このセクションのこの行より上にあるものはすべて、 git-config(1) ドキュメントには含まれていません。 以下の内容に関しては、git-config(1) ドキュメント にあるものと同一です。
- diff.tool
-
git-difftool(1) で使用する diff ツールを制御します。 この変数は、
merge.toolで構成された値をオーバーライドします。 以下のリストは、有効な組み込み値を示しています。 その他の値はカスタム diff ツール(tool)として扱われ、対応する difftool.<tool>.cmd 変数を定義する必要があります。 - diff.guitool
-
-g/--guiフラグが指定されている場合に、 git-difftool(1) によって使用されるdiffツールを制御します。 この変数は、merge.guitoolで構成された値をオーバーライドします。 以下のリストは、有効な組み込み値を示しています。 その他の値はカスタム diff ツール(tool)として扱われ、対応する difftool.<guitool>.cmd 変数を定義する必要があります。 - difftool.<tool>.cmd
-
指定のdiffツール(<tool>)を呼び出すコマンドを指定します。指定されたコマンドは、次の変数を使用してシェルで評価されます:
LOCALは、diff pre-imageの内容を含む一時ファイルの名前に設定され、REMOTEは、diff post-imageの内容を含む一時ファイルの名前に設定されます。詳細については、 git-difftool(1) の
--tool=<tool>オプションを参照してください。 - difftool.<tool>.path
-
指定のツール(<tool>)のパスを上書きします。これは、あなたのツールがPATHにない場合に役立ちます。
- difftool.trustExitCode
-
呼び出された difftool がゼロ以外の終了ステータス(exit status)を返す場合は、difftool を終了(exit)します。
詳細については、 git-difftool(1) の
--trust-exit-codeオプションを参照してください。 - difftool.prompt
-
diffツールを呼び出す前にプロンプトを表示します。
SEE ALSO
- git-diff(1)
-
コミット、コミット、作業ツリー等の間の変更を表示する
- git-mergetool(1)
-
マージ競合解決ツールを実行して、マージ競合を解決します
- git-config(1)
-
リポジトリまたはグローバルオプションの取得と設定
GIT
Part of the git(1) suite