【Git】【Windows】P4Merge の導入、設定をノート

スポンサードリンク

P4Merge インストール

  1. Visual Merge and Diff Tools | Perforce からダウンロード
  2. [Select Features] では [Visual Merge Tool(P4Merge)] のみ選択し、他は [This feature will not be installed and will be uninstalled if already installed] を設定してインストールしないようにして進める。

Git 設定

mergetool.p4merge.cmd を設定するとき、文字列をシングルクォーテーション ‘ で囲んでいることがポイントですの。

git config --global merge.tool p4merge
git config --global mergetool.p4merge.cmd '"C:¥Program Files¥Perforce¥p4merge.exe" "$BASE" "$LOCAL" "$REMOTE" "$MERGED"'
git config --global mergetool.trustExitCode false

設定ファイル

git config コマンドを実行しますと、.gitconfig に次のように書き込まれます。

コマンドを打たずに直接書き込んでも大丈夫です。

[merge]
    tool = p4merge
[mergetool "p4merge"]
    cmd = ¥"C:¥¥Program Files¥¥Perforce¥¥p4merge.exe¥" ¥"$BASE¥" ¥"$LOCAL¥" ¥"$REMOTE¥" ¥"$MERGED¥"
    trustExitCode = false

git config でのポイント

  • git config コマンドでは、シングルクォーテーション ‘ を使って文字列を囲うと、内部の円マーク ¥ および ダブルクォーテーション ” は自動的にエスケープされて前に ¥ が付与される形で .gitconfig に記述される。

コマンド試行錯誤

設定ファイルを直接修正すれば良いのですけれども、コマンドでの設定が上手くいきませんでした><。

なかばムキになって、なんとかコマンドでも mergetool の cmd を設定した結果を残しておきますの♪

NG 1

git config --global mergetool.p4merge.cmd "¥"C:¥¥Program Files¥¥Perforce¥¥p4merge.exe¥" ¥"$BASE¥" ¥"$LOCAL¥" ¥"$REMOTE¥" ¥"$MERGED¥""

[mergetool "p4merge"]
    cmd = ¥"C:¥¥Program Files¥¥Perforce¥¥p4merge.exe¥" ¥"¥" ¥"¥" ¥"¥" ¥"¥"

後半が設定されておりません><。原因不明ですわ。

NG 2

git config --global mergetool.p4merge.cmd '¥"C:¥¥Program Files¥¥Perforce¥¥p4merge.exe¥" ¥"$BASE¥" ¥"$LOCAL¥" ¥"$REMOTE¥" ¥"$MERGED¥"'

[mergetool "p4merge"]
    cmd = ¥¥"C:¥¥¥¥Program Files¥¥¥¥Perforce¥¥¥¥p4merge.exe¥¥¥" ¥¥¥"$BASE¥¥¥" ¥¥¥"$LOCAL¥¥¥" ¥¥¥"$REMOTE¥¥¥" ¥¥¥"$MERGED¥¥¥"

¥ が多すぎですの><。シングルクォーテーションで囲むと、” と ¥ が ¥ を付与することでエスケープされるようですわ。

OK

git config --global mergetool.p4merge.cmd '"C:¥Program Files¥Perforce¥p4merge.exe" "$BASE" "$LOCAL" "$REMOTE" "$MERGED"'

[mergetool "p4merge"]
    cmd = ¥"C:¥¥Program Files¥¥Perforce¥¥p4merge.exe¥" ¥"$BASE¥" ¥"$LOCAL¥" ¥"$REMOTE¥" ¥"$MERGED¥"

これで良いのです♪やったぜ!

おわりに

次のページが参考になりました。ありがとう存じます♪

Git の設定コマンドと、設定ファイルについて、少しづつわかってきましたわ♪

以上です。


スポンサードリンク

コメントを残す