設定と構成
プロジェクトの取得と作成
基本的なスナップショット
ブランチとマージ
プロジェクトの共有と更新
検査と比較
パッチ
デバッグ
メール
外部システム
サーバー管理
- 2.45.1 → 2.47.0 変更なし
- 2.45.0 変更なし
- 2.44.1 → 2.44.2 変更なし
-
2.44.0
02/23/24
- 2.43.1 → 2.43.5 変更なし
-
2.43.0
11/20/23
- 2.41.1 → 2.42.3 変更なし
-
2.41.0
06/01/23
- 2.38.1 → 2.40.3 変更なし
-
2.38.0
10/02/22
- 2.31.1 → 2.37.7 変更なし
-
2.31.0
03/15/21
- 2.22.1 → 2.30.9 変更なし
-
2.22.0
06/07/19
- 2.13.7 → 2.21.4 変更なし
-
2.12.5
09/22/17
- 2.10.5 → 2.11.4 変更なし
-
2.9.5
07/30/17
- 2.3.10 → 2.8.6 変更なし
-
2.2.3
09/04/15
- 2.1.4 変更なし
-
2.0.5
12/17/14
説明
git difftool は、一般的な diff ツールを使用して、リビジョン間のファイルの比較と編集を可能にする Git コマンドです。git difftool は git diff のフロントエンドであり、同じオプションと引数を受け入れます。git-diff[1] を参照してください。
オプション
- -d
- --dir-diff
-
変更されたファイルを一時的な場所にコピーし、それらに対してディレクトリ diff を実行します。このモードでは、diff ツールを起動する前にプロンプトが表示されることはありません。
- -y
- --no-prompt
-
diff ツールを起動する前にプロンプトを表示しません。
- --prompt
-
diff ツールを呼び出すたびにプロンプトを表示します。これはデフォルトの動作です。このオプションは、構成設定を上書きするために提供されています。
- --rotate-to=<file>
-
指定されたパスから diff の表示を開始し、それより前のパスは末尾に移動して出力します。
- --skip-to=<file>
-
指定されたパスから diff の表示を開始し、それより前のすべてのパスをスキップします。
- -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
構成変数を設定することで、ツールへのフルパスを明示的に指定できます。たとえば、difftool.kdiff3.path
を設定することで、kdiff3 への絶対パスを設定できます。それ以外の場合は、git difftool はツールが PATH で使用可能であると想定します。既知の diff ツールのいずれかを実行する代わりに、git difftool は、構成変数
difftool.<tool>.cmd
に呼び出すコマンドラインを指定することで、代替プログラムを実行するようにカスタマイズできます。git difftool がこのツールで呼び出されると(
-t
または--tool
オプション、またはdiff.tool
構成変数のいずれかを通して)、構成されたコマンドラインが呼び出され、次の変数が使用可能になります。$LOCAL
は diff 前画像の内容を含む一時ファイルの名前であり、$REMOTE
は diff 後画像の内容を含む一時ファイルの名前です。$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
変数から読み取られます。これは、構成変数difftool.guiDefault
を使用して自動的に選択できます。--no-gui
オプションを使用してこれらの設定を上書きできます。diff.guitool
が設定されていない場合、merge.guitool
、diff.tool
、merge.tool
の順にフォールバックして、ツールが見つかるまで続行します。 - --[no-]trust-exit-code
-
デフォルトでは、diff ツールによって報告されたエラーは無視されます。呼び出された diff ツールが 0 以外の終了コードを返す場合に git-difftool を終了するには、
--trust-exit-code
を使用します。--trust-exit-code
が使用されている場合、git-difftool は呼び出されたツールの終了コードを転送します。
サポートされているオプションの完全なリストについては、git-diff[1] を参照してください。
設定
git difftool は、difftool の同等の変数が定義されていない場合、git mergetool の構成変数にフォールバックします。
このセクションの上記の部分は、git-config[1] ドキュメントから含まれていません。以降の内容は、そこにあるものと同じです。
- diff.tool
-
git-difftool[1] で使用される diff ツールを制御します。この変数は、
merge.tool
で構成された値を上書きします。以下のリストは、有効な組み込み値を示しています。その他の値は、カスタム diff ツールとして扱われ、対応する difftool.<tool>.cmd 変数が定義されている必要があります。 - diff.guitool
-
-g/--gui フラグが指定されている場合に、git-difftool[1] で使用される diff ツールを制御します。この変数は、
merge.guitool
で構成された値を上書きします。以下のリストは、有効な組み込み値を示しています。その他の値は、カスタム diff ツールとして扱われ、対応する difftool.<guitool>.cmd 変数が定義されている必要があります。 - difftool.<tool>.cmd
-
指定された diff ツールを呼び出すコマンドを指定します。指定されたコマンドは、次の変数が使用可能な状態でシェルで評価されます。LOCAL は diff 前画像の内容を含む一時ファイルの名前であり、REMOTE は diff 後画像の内容を含む一時ファイルの名前です。
git-difftool[1] の
--tool=<tool>
オプションの詳細を参照してください。 - difftool.<tool>.path
-
指定されたツールのパスを上書きします。これは、ツールが PATH にない場合に役立ちます。
- difftool.trustExitCode
-
呼び出された diff ツールが 0 以外の終了ステータスを返す場合、difftool を終了します。
git-difftool[1] の
--trust-exit-code
オプションの詳細を参照してください。 - difftool.prompt
-
diff ツールを呼び出すたびにプロンプトを表示します。
- difftool.guiDefault
-
デフォルトで
diff.guitool
を使用するにはtrue
を、DISPLAY
環境変数の値の有無に応じてdiff.guitool
またはdiff.tool
を選択するにはauto
を設定します。デフォルトはfalse
で、diff.guitool
を使用する場合は、--gui
引数を明示的に指定する必要があります。
参照
- git-diff[1]
-
コミット間、コミットと作業ツリー間などの変更を表示する
- git-mergetool[1]
-
マージ競合解決ツールを実行して、マージ競合を解決します。
- git-config[1]
-
リポジトリまたはグローバルオプションを取得および設定します。
GIT
git[1]スイートの一部です。