Macでグラフィカルにファイルの差分をチェックする方法
ファイルの差分を取るのに、今まで、emacsのediffを使っていました。emacsのバッファ同士を比較して、差分の確認と修正ができます。
使い方は、次の通りです。
- 比較するファイル二つを開く
- ESC-x ediff-buffers
- Buffer AとBuffer Bを指定
- Spaceを押す度に差分個所表示
赤枠は、個人情報なので、後で追加した部分です。
緑、黄色、グレーで表示されている部分が、差分になります。
初めてこの機能を知った時は、感動でした。
ところが最近、もっとすごい方法を知ったのです。
Mac OS X限定ですけれど、opendiffから呼び出されるFileMerge.appによる比較画面がすごいのです。
次のコマンドで起動します。
$ opendiff yoruho.pl yoruho.pl~
すると、ファイルがasciiじゃないけど、FileMerge.appで開くかと言う、確認ウィンドウが開きます。
構わず、"Proceed anyway"を押すと、FileMerge.appが起動します。
差分が一発でわかります。しかも、スクロールするのに合わせて、差分個所も着いてきます。
FileMerge.appは、Xcodeの一部なので、Xcodeをインストールしておく必要があります。
次の所で、簡単に説明されています。ありがとうございます。
更に前の話ですが、sdiffと言うコマンドを知った時も感動的でした。ファイルを左右二つに並べて、行が違う所に、マークが付くのです。
$ sdiff yoruho.pl yoruho.pl~ | less
青枠で示した部分に、"|"とか"<"とか">"が付きます。
sdiffは、どんな環境でも使えるので便利です。
(追記 2012-03-13 00:08)
最近のdiffだと、"-y"オプションがあります。
$ diff -y yoruho.pl yoruho.pl~ | less
sdiffと同様の結果が得られます。
ディスカッション
コメント一覧
まだ、コメントがありません