付録B TortoiseMerge の自動化

目次

TortoiseMerge コマンドラインスイッチ

TortoiseMerge は、ファイルを選択する 開く ダイアログを出さずに、コマンドラインパラメータを指定して起動できます。TortoiseMerge を他のアプリケーションから使用する際に便利です。

TortoiseMerge コマンドラインスイッチ

ほとんどのスイッチには、パスやその他の文字列といった追加情報が必要です。この場合、スイッチの後に ':' に続けて文字列・パスを指定してください。例:

/base:"c:\folder\my base file.txt"

表B.1 有効なコマンドライン一覧

コマンド説明
/?非常に重要なコマンドラインスイッチをダイアログに表示します。
/help? と同様です。
/base3 方向 diff で使用する base ファイルを指定します。独立した画面にはでませんが、これが共通の祖先になります。2 方向 diff なら左に表示します。
/basenamebase ファイルの名前です。ファイルのパスの代わりにタイトルに表示します。3 方向 diff では、ビュータイトルのツールチップに表示します。
/theirs3 方向 diff で使用する theirs ファイルを指定します。左ペインに表示します。
/theirsnametheirs ファイルの名前です。ファイルパスの代わりにビュータイトルに表示します。
/mine3 方向 diff で使用する mine ファイルを指定します。右ペインに表示します。2 方向 diff では右のファイルです。
/minenamemine ファイルの名前です。ファイルパスの代わりにビュータイトルに表示します。
/merged3 方向 diff で結果として得られる merged ファイルを指定します。マージや競合解消した結果を保存するファイルパスです。設定しない場合、TortoiseMerge はどこに保存するか訊いてきます。
/mergednamemerged ファイルの名前です。ファイルパスの代わりにビュータイトルに表示します。
/patchpath適用するパッチファイルのパスです。このパスを設定しない場合、TortoiseMerge はパッチファイルのあるパスと一致するパスから探そうとしますが、非常に長い時間 がかかります。
/patchoriginalパッチを当てるオリジナルファイルの名前です。ビュータイトルに使われます。
/patchpatchedパッチを当てたファイルの名前です。ビュータイトルに使われます。
/diffパッチ・diff ファイルをディレクトリに適用するパスです。
/onewayTortoiseMerge を、ユーザが指定したビューではなく、強制的に 1 方向ビューで起動します。
/reversedpatch差分を取るよう指定した 2 ファイルの左右のビューを入れ替えます。
/createunifieddiff/origfile:"path_to_original_file"/modifiedfile:"path_to_modified_file" で指定したファイルから、unified diff ファイル (パッチファイル) を作成します。ターゲットパスは /outfile:"path_to_resulting_patchfile" にセットします。/outfile を設定していない場合、ファイルの保存ダイアログを表示し、パッチファイルを保存する場所を指定できます。/createunifieddiff をセットした場合、他のパラメータをすべて無視することに注意してください。


他の diff プログラムと互換があるように、コマンドラインに単にファイル名を与えることもできます。コマンドラインの単純な形は以下になります。

TortoiseMerge BaseFilePath MyFilePath [ TheirFilePath ]

ファイルを 2 つ与えると、相互に比較します。3 ファイル与えると、最初の物を BASE ファイル、他の 2 つで比較する 3 方向 diff となります。