Edited at

OSX で git diff を DiffMerge で visual に表示できるように設定する

More than 3 years have passed since last update.

git diff でターミナル上で差分比較はできるわけですが、

これは行単位に変更点が確認できるだけなので、行のなかのどこが変更されたかはわかりません。

github 上で Diff options を Split で表示することで、

行の中のどこが変更されたかも確認はできます。

しかしながら以下の問題があります。


  • git commit & push した後でないと確認できない。

  • 変更行数が多すぎると、そもそも確認できなくなる(1500行を超えた場合らしい)。


    • ソースコードで普通は無いことですが、CSV に列を追加した場合などがこれにあたります。



というわけで、OSX 上の GUI で visual な diff を使って差分確認をする必要がでてきます。

これの設定方法です。


前提

visual な diff は DiffMerge を使うこととします。

以下の条件で選びました。


  • 日本語 OK。



  • ある程度巨大な diff を表示できる。

  • 通常の OSX のインストールの手順とターミナルでのコピペで設定できる。


手順



  1. DiffMergeをダウンロード・インストールする。


  2. DiffMerge を日本語化する


    • 但しこれでも日本語化できないケースがあるようです。これは自分は発生していないので解決できません。



  3. 以下をコマンドラインで実行する。

$ git config --global diff.tool diffmerge

$ git config --global difftool.prompt false
$ git config --global difftool.diffmerge.path /Applications/DiffMerge.app/Contents/Resources/diffmerge.sh


使い方

git diff と打つ代わりに git difftool と打てば OK です。

ファイルごとに DiffMerge が起動するので、確認が終わったら ⌘W で閉じれば、次のファイルの差分表示に進みます。