Merge には、Merge をさまざまなアプリケーションから起動できるようにするコマンドライン ツールがいくつか用意されています。アプリケーション固有の手順については、ソース管理、構成管理、およびその他のアプリケーションとの統合をご覧ください。また、オートメーション API によって、Merge の制御性をさらに高めることができます。
Compare および ConsoleCompare コマンドライン ユーティリティ
コマンドラインから Merge を使う場合には、Compare.exe
または ConsoleCompare.exe
コマンドライン ユーティリティの使用をお勧めします。これらのプログラムは Merge オートメーション API を使って、Merge の新規または既存のインスタンスでファイル比較およびフォルダー比較を起動します。
Compare と ConsoleCompare の違い
Compare.exe
はグラフィカルな Windows アプリケーションであり、通常、他のグラフィカルな Windows アプリケーションから Merge を起動するために使用されます。ConsoleCompare.exe
はコンソール アプリケーションであり、通常、コンソール ベースのコマンドライン ツールから Merge を起動するために使用されます。
Windows ターミナルも Windows コマンド プロンプトも、Compare.exe
などのグラフィカルな Windows アプリケーションが完了するのを待たずに、ユーザーに制御を返します。このため、Windows ターミナルで Compare.exe
に /wait
コマンドライン引数を使用しても(下記の使用方法を参照)、コマンドが起動されると、Compare.exe
がまだ実行中で Merge が終了するのを待っていたとしても、直ちに制御がプロンプトに返されます。この動作では望ましくないこともあるため、Merge には ConsoleCompare.exe
と呼ばれる、Compare.exe
のコンソール バージョンが付属しています。Windows ターミナルは、ConsoleCompare.exe
コマンドが終了するまで制御を返しません。
使用方法
{Compare | ConsoleCompare} [/? | /h]
[/wait | /noWait] [/aN] [/swap] [/max]
[/titleN:"<NthFileOrFolderTitle>" …] [/2 | /3]
{fileArguments | folderArguments}
ファイル比較の fileArguments
は次のとおりです。
[/readOnly] [/closeIfNoChanges]
[/merge [/testConflicts]] [/lineN:<lineNumber> …]
<firstFile> [<secondFile>] [<thirdFile>] [<mergedOutputFile>]
フォルダー比較の folderArguments
は次のとおりです。
<firstFolder> [<secondFolder>] [<thirdFolder>]
全般的な引数
-
/?
または/h
使用方法の概要を表示します。
-
/wait
(ConsoleCompare
の既定)ユーザーが Merge で比較を閉じるまで終了するのを待ちます。
-
/noWait
(Compare
の既定)ユーザーが Merge で比較を閉じるまで終了するのを待ちません。
-
/aN
(N
は1
、2
、3
のいずれか)N
番目のファイル/フォルダー引数が、他の 2 つのファイル/フォルダーの共通の親ファイルであることを示します。共通の親ファイルは中央の比較ペインに表示されます。3 者間比較でのみ使用します。 -
/swap
左右のペインに表示されているファイル/フォルダーを交換します。
-
/max
Merge のアプリケーション ウィンドウを最大化します。
-
/titleN:"<NthFileOrFolderTitle>"
(N
は1
、2
、3
のいずか)コマンドラインで指定された N 番目のファイル/フォルダーを表示する比較ペインに情報を提供するタイトルを付けます。この機能によって、バージョン コントロール システムで比較ペインにわかりやすいタイトルが付けられます。たとえば 3 つの比較ペインにそれぞれ
"Djn's Revision v1.1.1"
、"Common Ancestor"
、"Jrs's Revision v1.1.2"
などのタイトルを付けることができます。タイトルは一重引用符または二重引用符で囲む必要があります。タイトル自体にスペースまたは引用符が含まれている場合は、引用符が必要です。一重引用符で囲まれたタイトル内で一重引用符を使用することはできません。また、二重引用符で囲まれたタイトル内で二重引用符を使用することはできません。
-
/2
(既定値。指定されているファイル/フォルダーの引数が 4 つでない場合に適用されます)指定されているファイル/フォルダーの引数が 3 つ以下である場合は、2 者間比較を実行します。4 つのファイル/フォルダー引数が指定されている場合は、代わりに 3 者間比較が実行されます。
-
/3
指定されているファイル/フォルダーの引数が 3 つ以上である場合は、3 者間比較を実行します。Araxis Merge 2023 以降では、ファイル/フォルダー引数の指定が 2 つ以下である場合は、代わりに 2 者間比較が実行されます。
ファイル比較の引数
-
/readOnly
比較ファイルが編集されないようにします。
-
/closeIfNoChanges
比較ファイルに差異がない場合は、比較を閉じます。
-
/merge
共通の親ファイルに自動 3 者間マージを行います。3 者間比較でのみ使用します。
-
/testConflicts
(/merge
が必要)マージを実行し、不一致が発生した場合には、その不一致数をユーティリティのステータスとして返します。
ConsoleCompare
の場合、不一致の数はテキスト メッセージとしてコンソールにも出力されます。3 者間比較でのみ使用します。 -
/lineN:<lineNumber>
(N
は1
、2
、3
のいずれか)N
番目の比較ペインにあるファイルの指定された行番号へ移動します。複数の/lineN
引数が指定された場合は、N
の昇順で連続して移動が実行されます。
2 者間比較(/2
)の場合は、<firstFile>
と <secondFile>
(存在する場合)のファイルが比較されます。ファイル引数が 1 つだけ指定されている場合は、1 つの比較ペインのみが設定された状態で比較が開きます。
3 者間比較(/3
)の場合は、<firstFile>
、<secondFile>
、<thirdFile>
のファイルが比較されます。3 者間比較を実行するには、Merge の Professional Edition が必要です。
オプションのファイル引数 <mergedOutputFile>
は、2 者間と 3 者間のファイル比較のどちらでも指定できます。この追加引数を指定すると、ファイル比較のいずれかのファイルに変更を保存する場合の既定の保存ファイル名が設定されます。たとえば、リボンの保存 ボタンを使用してファイルを保存すると、<mergedOutputFile>
に書き込まれます。詳細については、ファイルの保存を参照してください。
3 つのファイルをマージする場合、左右のファイルに対する変更を中央のファイルへ統合する方法が最も簡単な方法です。このため、共通の親ファイルまたはベース ファイル(ある場合)は中央のペインに表示されている必要があります。<secondFile>
が共通の親となるようにファイル引数を適切に並べることができない場合は、コマンドライン オプション /aN
を使用して共通の親ファイルを指定することができます。3 者間ファイル比較とマージの詳細については、3 者間ファイル比較およびマージおよび自動ファイル マージを参照してください。
フォルダー比較の引数
2 者間比較(/2
)の場合は、<firstFolder>
と <secondFolder>
(存在する場合)のフォルダーが比較されます。フォルダー引数が 1 つだけ指定されている場合は、1 つの比較ペインのみが設定された状態で比較が開きます。
3 者間比較(/3
)の場合は、<firstFolder>
、<secondFolder>
、<thirdFolder>
のフォルダーが比較されます。3 者間比較を実行するには、Merge の Professional Edition が必要です。
3 つのフォルダーをマージする場合、左右のフォルダーに対する変更を中央のフォルダーへ統合する方法が最も簡単な方法です。このため、共通の親フォルダーまたはベース フォルダー(ある場合)は中央のペインに表示されている必要があります。<secondFolder>
が共通の親となるようにフォルダー引数を適切に並べることができない場合は、コマンドライン オプション /aN
を使用して共通の親フォルダーを指定することができます。3 者間フォルダー比較とマージの詳細については、3 者間フォルダー比較および自動フォルダー マージを参照してください。
例
1.
Compare c:\temp\file1.txt c:\temp\file2.txt
指定した 2 つのファイルを比較するファイル比較ウィンドウが開きます。
2.
Compare /wait c:\temp\file1.txt c:\temp\file2.txt
指定した 2 つのファイルを比較するファイル比較ウィンドウが開きます。ユーザーがファイル比較ウィンドウを閉じるまで、比較は終了しません。
3.
Compare /wait c:\temp\file1.txt c:\temp\file2.txt c:\temp\merged.txt
指定した最初の 2 つのファイルを比較するファイル比較ウィンドウが開きます。2 つのうちいずれかのファイルへ変更を保存しようとした場合、c:\temp\merged.txt
が既定の保存ファイル名となります。ユーザーがファイル比較ウィンドウを閉じるまで、比較は終了しません。
4.
Compare /wait /a1 /3 c:\temp\file1.txt c:\temp\file2.txt c:\temp\file3.txt
指定した 3 つのファイルを比較するファイル比較ウィンドウが開きます。ユーザーがファイル比較ウィンドウを閉じるまで、比較は終了しません。指定した最初のファイルはほかの 2 ファイルの共通の親ファイルであると判断されるので、中央のファイル ペインに表示されます。
5.
Compare /wait /a3 /3 /title1:"Djn's Revision" /title2:"Jrs's Revision" /title3:"Common Ancestor" c:\temp\file1.txt c:\temp\file2.txt c:\temp\file3.txt c:\temp\merged.txt
指定した最初の 3 つのファイルを比較するファイル比較ウィンドウが開きます。3 つのうちいずれかのファイルへ変更を保存しようとした場合、c:\temp\merged.txt
が既定の保存ファイル名となります。ユーザーがファイル比較ウィンドウを閉じるまで、比較は終了しません。指定されている 3 番目のファイルは他の 2 ファイルの共通の親ファイルであると判断されるので、中央のファイル ペインに表示されます。各ファイル ペインにはわかりやすいタイトルが付けられます。
Merge コマンドライン
比較ごとに Merge の新しいインスタンスを開始する必要が特にない限り、Merge のメインの実行可能ファイルである Merge.exe
を使用してファイル比較およびフォルダー比較を開くことはお勧めしません。前述のとおり、代わりに ConsoleCompare.exe
または Compare.exe
を使用してください。
使用方法
Merge [</Automation>] [</Embedding>] [</Options>] [</SetEditFieldsOnly>]
[<file1 [file2] [file3]> | <folder1 [folder2] [folder3]>]
コマンドラインの引数は下記のとおりです。
/Automation
Merge をオートメーション サーバーとして起動する場合に使用します。あまり一般的ではありません。/Embedding
Merge をオートメーション サーバーとして起動する場合に使用します。あまり一般的ではありません。/Options
Merge のオプション ダイアログを表示します。/SetEditFieldsOnly
コマンドラインでファイル引数およびフォルダー引数を指定しても、それらはファイル/フォルダーのパス入力フィールドの設定には使用されますが、比較は開始されません。<file1 [file2] [file3]> | <folder1 [folder2] [folder3]>
オプションのファイルまたはフォルダーです。2 つまたは 3 つのファイルを指定すると、Merge はそれらのファイルのファイル比較を実行します。2 つまたは 3 つのフォルダーを指定すると、Merge はそれらのフォルダーのフォルダー比較を実行します。
/Automation
または /Embedding
を使用すると、実行したプロセスの作業ディレクトリを継承しないで、ユーザーの Documents
(ドキュメント)ディレクトリが作業ディレクトリに設定されます。Documents
(ドキュメント)ディレクトリが見つからない場合は、ユーザーのホーム ディレクトリが使用されます。
例
1.
Merge test1.txt test2.txt test3.txt
Merge が起動し、指定された 3 ファイルのファイル比較ウィンドウが開きます。
2.
Merge c:\temp\first-folder c:\temp\second-folder
Merge が起動し、指定された 2 フォルダーのフォルダー比較ウィンドウが開きます。