Merge には、Merge をさまざまなアプリケーションから起動できるようにするコマンド ライン ツールがいくつか用意されています。また AppleScript API によって、Merge の制御性をさらに高めることができます。
Compare コマンド ライン ユーティリティ
コマンド ラインから Merge を使う場合には、Compare コマンド ライン ユーティリティ(compare)の使用をお勧めします。このユーティリティ プログラムは AppleScript を使って、Araxis Merge の新規または既存のインスタンスでファイル比較を起動します。
compare を使用する前に、Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
使用方法
compare [-?| -h] [-[no]wait] [-merge] [-testconflicts] [-readonly] [-aN] [-swap] [-max] [[-titleN:"<NthFileTitle>"]…] [-2
| -3] <firstFile> <secondFile> [<thirdFile>] [<mergedOutputFile>]
2 者間比較の場合、2 つのファイル名を引数として指定しなければなりません。これらのファイルがファイル比較ウインドウに表示されます。またオプションで、3 番目のファイル名を引数として指定することもできます。この引数は、ファイル比較ウインドウでいずれかのファイルの変更を保存したときに、デフォルトの保存先ファイル名として使われます(たとえばファイル パネルを右クリックして表示されるショートカット メニューから[保存]または[名前を付けて保存...]を選択した場合)。
3 者間比較の場合、3 つのファイル名を引数として指定しなければなりません。このとき、共通の親ファイル(またはベース ファイル)は中央のファイル パネルに表示されていなければなりません。これはコマンド ライン オプション -aN で指定できます。2 者間比較の場合と同様に、デフォルトのファイル保存先を指定するためにオプションのファイル名の引数を指定することができます。
3 つのファイルをマージする場合、左右のファイルに対する変更を中央のファイルへ保存する方法が最も簡単な方法です。これが共通の親ファイルを中央に置く理由です。共通の親ファイルへ変更をマージしたら、中央のファイル パネルを右クリックして[保存]または[名前を付けて保存...]を選択し、マージしたファイルを保存してください。
コマンド ラインの引数は下記のとおりです。
-
-?または-h利用状況サマリーを出力します。 -
-waitユーザーが Merge で比較ファイルを閉じるまで終了するのを待ちます。 -
-nowait比較ウインドウが閉じられるのを待たないようにします。 -
-merge3 つのファイルを比較した後、共通の親ファイルに自動 3 者間マージを行います。 -
-testconflicts-mergeと組み合わせて、自動 3 者間マージによってマージの不一致が発生するかどうかを調べます。プログラムのリターン コードは発生した不一致数です。 -
-readonly比較されたファイルが編集できないようにします。 -
-aN(Nは1、2、3のいずれか) N 番目のファイル名引数が、2 つのファイルの共通の親ファイルであることを示します。共通の親ファイルは中央のファイル パネルに表示されます。3 者間比較でのみ使用します。 -
-swap左右のパネルに表示されているファイルを交換します。 -
-maxMerge のアプリケーション ウインドウを最大化します。 -
-titleN:"<NthFileTitle>"(Nは1、2または3のいずれか) コマンド ラインで指定した N 番目のファイルを表示するファイル パネルにわかりやすいタイトルを付けます。タイトルは一重引用符または二重引用符で囲む必要があります。この機能によって、VC システムや SCM システムでファイル パネルにわかりやすいタイトルが付けられます。たとえば 3 つのパネルにそれぞれ "Djn’s Revision v1.1.1"、"Common Ancestor"、"Jrs’s Revision v1.1.2" などのタイトルを付けることができます。 -
-22 者間比較を実行します(デフォルト)。<firstFile> および <secondFile> の各ファイルが比較されます。<mergedOutputFile> がある場合、マージの結果はデフォルトでこのファイルに保存されます。 -
-33 者間比較を実行します(Professional Edition のみ)。<firstFile>、<secondFile>、<thirdFile> の各ファイルが比較されます。<mergedOutputFile> がある場合、マージの結果はデフォルトでこのファイルに保存されます。
例
compare file1.txt file2.txt
指定した 2 つのファイルを比較するファイル比較ウインドウが開きます。
compare -wait file1.txt file2.txt
指定した 2 つのファイルを比較するファイル比較ウインドウが開きます。ユーザーがファイル比較ウインドウを閉じるまで、比較は終了しません。
compare -wait file1.txt file2.txt /tmp/merged.txt
指定した最初の 2 つのファイルを比較するファイル比較ウインドウが開きます。2 つのうちいずれかのファイルへ変更を保存しようとすると、デフォルトの保存先ファイルは /tmp/merged.txt になります。ユーザーがファイル比較ウインドウを閉じるまで、比較は終了しません。
compare -wait -a1 -3 /tmp/file1.txt /tmp/file2.txt /tmp/file3.txt
指定した 3 つのファイルを比較するファイル比較ウインドウが開きます。ユーザーがファイル比較ウインドウを閉じるまで、比較は終了しません。指定した最初のファイルはほかの 2 ファイルの共通の親ファイルであると判断されるので、中央のファイル パネルに表示されます。
compare -wait -a3 -3 -title1:"Djn’s Revision" -title2:"Jrs’s Revision" -title3:"Common Ancestor" /tmp/file1.txt /tmp/file2.txt
/tmp/file3.txt /tmp/merged.txt
指定した最初の 3 つのファイルを比較するファイル比較ウインドウが開きます。3 つのうちいずれかのファイルへ変更を保存しようとすると、デフォルトの保存先ファイルは /tmp/merged.txt になります。ユーザーがファイル比較ウインドウを閉じるまで、比較は終了しません。指定されている 3 番目のファイルは他の 2 ファイルの共通の親ファイルであると判断されるので、中央のファイル パネルに表示されます。各ファイル パネルにはわかりやすいタイトルが付けられます。
araxisp4diff
このユーティリティを使用して Perforce コマンドライン ユーティリティ(p4)と Perforce Visual Client(p4v)を有効にすることで、Araxis Merge によるファイル比較が可能となります。それはさらに compare ユーティリティの単純な置き換えとして使用できます。
使用方法
araxisp4diff [-?| -h] <firstFile> <secondFile>
Perforce コマンドライン ツールで araxisp4diff を使用するために P4DIFF 環境変数に araxisp4diff への参照を設定してください。たとえば、ご使用の ~/.profile ファイルに次の行を追加してください:
export P4DIFF='/Applications/Araxis Merge/Utilities/araxisp4diff'
Araxis Merge はバイナリとイメージ比較を行うことができるので p4 diff コマンドを使用するときに通常 -t オプションを含めるべきです。たとえば、p4 diff -t と記述します。
araxisp4winmrg
このユーティリティを使用して Perforce コマンドライン ユーティリティ(p4)と UI(p4v)を有効にすることで、Araxis Merge によるファイルマージが可能となります。
使用方法
araxisp4winmrg [-?| -h] <ancestorFile> <theirFile> <yourFile> <saveFile>
Perforce コマンドライン ツールで araxisp4winmrg を使用するために P4MERGE 環境変数に araxisp4winmrg への参照を設定してください。たとえば、ご使用の ~/.profile ファイルに次の行を追加してください:
export P4MERGE='/Applications/Araxis Merge/Utilities/araxisp4winmrg'
araxissvndiff
このユーティリティを使用して Subversion コマンドライン ユーティリティ(svn)を有効にすることで、Araxis Merge によるファイル比較が可能となります。
使用方法
araxissvndiff [-?| -h] <firstTitle> <secondTitle> <firstFile> <secondFile>
Subversion コマンドランツールで araxissvndiff を使用するには、~/.subversion/config を編集して、diff-cmd プロパティ([helpers] セクション)にaraxissvndiff のへ参照を追加します。例:
diff-cmd = /Applications/Araxis¥ Merge/Utilities/araxissvndiff
この行はデフォルトのコンフィグレーションファイルではコメント アウトされています。そのため、先頭に # 文字とスペースがある場合はこれらを削除してください。
araxissvndiff3
このユーティリティを使用して Subversion コマンドライン ユーティリティ(svn)を有効にすることで、Araxis Merge によるファイルマージが可能となります。
使用方法
araxissvndiff3 [-?| -h] <mineTitle> <olderTitle> <yoursTitle> <mineFile> <olderFile> <yoursFile>
Subversion コマンドランツールで araxissvndiff3 を使用するには、~/.subversion/config を編集して、diff3-cmd プロパティ([helpers] セクション)にaraxissvndiff3 のへ参照を追加します。例:
diff3-cmd = /Applications/Araxis¥ Merge/Utilities/araxissvndiff3
この行はデフォルトのコンフィグレーションファイルではコメント アウトされています。そのため、先頭に # 文字とスペースがある場合はこれらを削除してください。
