Merge for macOS は、バージョン管理(VC)やソフトウェア構成管理(SCM)、およびサードパーティ製ファイル比較(diff)ツールまたはファイル マージ ツールの指定が可能なほとんどのアプリケーションと統合できます。このトピックには、Merge を以下のアプリケーションと統合するための説明が含まれています。
- Android Studio
- AccuRev
- Cornerstone
- Dreamweaver
- Eclipse
- Git
- JetBrains Aqua
- JetBrains AppCode
- JetBrains CLion
- JetBrains DataGrip
- JetBrains DataSpell
- JetBrains GoLand
- JetBrains IntelliJ IDEA
- JetBrains MPS
- JetBrains PhpStorm
- JetBrains PyCharm
- JetBrains Rider
- JetBrains RubyMine
- JetBrains WebStorm
- MacHg
- Mercurial
- Path Finder
- Perforce
- SmartGit/Hg
- SmartSVN/SmartCVS
- SourceTree
- Subclipse
- Subversion
- Subversive
- Surround SCM
- svnX
- TortoiseHg
- Tower
- Veracity
- Versions
多くの SCM システムとの統合には、1 つのファイルから変更された、元を同じくする 2 つの修正版を比較できるようにするため、Merge の Professional Edition が必要となります。
その他のアプリケーション
ご自分が選択したアプリケーションがこのトピックにリストされていない場合は、Merge for Windows と他のアプリケーションの統合の情報が役に立つ出発点になるかもしれません。また、ご自身で AppleScript API または コマンドライン ユーティリティを使用して、Merge を別のアプリケーションと統合することも可能です。
Merge をほかのシステムと統合する方法をご存じの場合、あるいは以下に提供されている情報に対して訂正がある場合は、内容を更新いたしますので、その旨弊社までご連絡ください。
Android Studio
Android Studio は、ファイルとフォルダの比較、およびファイル マージで Merge が使用されるように設定できます。以下の手順は、Android Studio バージョン 2021.3.1 でテスト済みです。
Android Studio で Merge をファイルとフォルダ比較ツールとして使用するための設定:
-
Android Studio▸Preferences… を選択します。
-
Preferences ウインドウで、左側の一覧から Tools▸Diff & Merge▸External Diff Tools を選択します。
-
Enable external diff tool チェックボックスをオンにし、以下のように設定します。
Path to executable:/Applications/Araxis Merge.app/Contents/Utilities/compare
Parameters:-3 -a3 %1 %2 %3 -
Use by default チェックボックスをオンにします。
-
Test Diff ボタンをクリックします。2 者間比較の Araxis Merge ウインドウが表示されます。比較を閉じます。
-
Test Three-Side Diff ボタンをクリックします。3 者間比較の Araxis Merge ウインドウが表示されます。 比較を閉じます。
Android Studio で Merge をマージ ツールとして使用するための設定:
-
Android Studio▸Preferences… を選択します。
-
Preferences ウインドウで、左側の一覧から Tools▸Diff & Merge▸External Diff Tools を選択します。
-
Enable external merge tool チェックボックスをオンにし、以下のように設定します。
Path to executable:/Applications/Araxis Merge.app/Contents/Utilities/compare
Parameters:-3 -a2 -title1:Theirs -title2:Ancestor -title3:Yours %2 %3 %1 %4 -
Trust process exit code チェックボックスがオフになっていることを確認します。
compare
からの終了コードは、出力ファイルが更新されたかどうかを示すわけではありません。 -
Test Merge ボタンをクリックします。3 者間比較の Araxis Merge ウインドウが表示されます。比較を閉じます。
-
Merge In External Tool ダイアログで、Mark as Resolved ボタンをクリックします。
-
Test Complete ダイアログで、OK ボタンをクリックします。
Android Studio がメモリに保存しているファイルに対して、Araxis Merge を使用して変更を加えた場合(マージ操作の後など)、メモリ内のファイルを保持するか、またはディスク上の修正ファイルの内容で更新するかを Android Studio から尋ねられることがあります。ほとんどの場合は、マージ操作後のディスクから変更を読み込みたいでしょう。
AccuRev
AccuRev macOS クライアントはファイル比較とマージ操作のために Araxis Merge を使用するように設定できます。
これらの手順は AccuRev 5.2 で動作すると思われます。
AccuRev クライアントのファイル比較で Merge が使用されるように設定するには:
-
AccuRev クライアントで、ToolsメニューからPreferences…を選択します。
-
Diff/Merge タブを選択します。
-
Diff 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/compare -wait -2 %1% %2%
-
Preferences ウインドウを閉じます。
AccuRev クライアントのファイル マージ操作で Merge が使用されるように設定するには:
-
Araxis Merge
compare
ユーティリティは、AccuRev クライアントによるファイル マージ操作で直接使用することができません。これには引用符で囲んだファイル名を渡し、成功に応じた特定のリターン コードを求めます。これに対処するには、/usr/local/bin/
(または任意の別の場所)にac-merge-shim.sh
というファイルを作成し、以下の内容を含めます。#!/bin/sh eval "$*" if [ "$?" = "-1" ]; then exit 1 fi exit 0
-
この
ac-merge-shim.sh
をスクリプト実行可能ファイルにします。たとえば、macOS Terminal で次のコマンドを実行します(/usr/local/bin
部分は必要に応じて ac-merge-shim.sh ファイルへの完全パスに置き換えます)。chmod a+x /usr/local/bin/ac-merge-shim.sh
-
AccuRev クライアントで、ToolsメニューからPreferences…を選択します。
-
Diff/Merge タブを選択します。
-
Merge 入力フィールドで次のように入力します。
/usr/local/bin/ac-merge-shim.sh /Applications/Araxis Merge.app/Contents/Utilities/compare -wait -a3 -3 %1% %2% %a% %o%
メモ:
/usr/local/bin/
部分は必要に応じて、ac-merge-shim.sh
スクリプトへの完全パスに置き換えます。 -
Preferences ウインドウを閉じます。
Cornerstone
Zennaware Cornerstone は Merge に対する組み込みをサポートする Subversion クライアントです。以下の手順は Cornerstone v2.7.9 でテストされています。
Merge を使用できるように Cornerstone を設定するには、以下の手順に従います。
- Cornerstone▸Preferences… を選択します。
- General カテゴリを選択します。
- External compare tool ドロップダウン フィールドをクリックして、Araxis Merge を選択します。
- External merge tool ドロップダウン フィールドをクリックして、Araxis Merge を選択します。
- Preferences ウインドウを閉じます。
Dreamweaver
Adobe(Macromedia) Dreamweaver CS6 は Araxis Merge と統合し、ファイルの 2 者間比較を起動することができます。したがって、Merge を Dreamweaver とのみ使用するのであれば、Standard Edition で十分です。
以下の手順は Dreamweaver CS6 v12.0 でテストされています。
Dreamweaver CS6 で Merge を比較ツールとして使用するための設定:
-
Dreamweaver▸Preferences… を選択します。
-
File Compare カテゴリを選択します。
-
Choose application to compare files 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/compare
-
OK ボタンをクリックしてPreferencesダイアログを閉じます。
Eclipse
Eclipse については、Subclipse の項目をご覧ください。
Git
Merge は Git と強固に統合されます。Araxis では、Merge が Git ディポ のファイルに直接アクセスできるように Git ファイルシステム プラグイン を提供しています。また、ファイル比較(フォルダ比較ではない)では、Merge は バージョン ボタン ドロップダウン バージョン メニューに、比較されている各ファイルの別のリビジョンを持たせることができます。詳細については、テキスト ファイル(または、入力/ペーストしたテキスト)の比較を参照してください。
Git のファイル比較およびマージ操作で Merge が使用されるように設定できます。
以下の設定手順は Git v2.24.0 でテストを行いました。
ファイル比較およびファイル マージに Araxis Merge を使用するには:
インストール方法ページの Merge コマンドライン ユーティリティのインストール トピックで説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
-
Git 構成ファイル に以下の diff および merge ツール設定を追加して、更新してください。
[diff] tool = araxis [merge] tool = araxis [alias] ad = difftool --tool=araxis --dir-diff ads = difftool --tool=araxis --dir-diff --staged
ファイルを比較するには、
git difftool
コマンドを使用します。--dir-diff
オプションを指定すると、変更されたすべてのファイルを表示するフォルダ比較が行われます。上のコードで定義されている git
ad
(Araxis diff の省略)およびads
(Araxis diff stage)エイリアスは、git difftool
コマンドを介して Merge を起動するための便利なショートカットを提供します。このエイリアスの使用法については、gitad
およびads
エイリアスの使用例を参照してください。ファイルのマージ後、ブランチまたはリモート リポジトリの不一致変更を解決するには、
git mergetool
コマンドを使用します。git mergetool
によって Merge が開いた場合、自動ファイル マージ トピックで説明されているように、比較されたファイルは自動的にマージされます。重複する変更箇所、またはそれぞれの最初か最後が一致する変更箇所には、不一致マーカーが付けられます。このように自動マージができない各行の先頭に、赤い不一致アイコン が表示されます。自動マージされる前のファイルを見たい場合は、元に戻す をクリックするか Cmd+Z キーを押下します。
git ad および ads エイリアスの使用例:
git difftool
コマンドは git diff
へのフロントエンドであるため、git diff
オプションと引数を受け付けます。上の構成で定義されている git ad
および ads
エイリアスは単に git difftool
を起動するためのショートカットです。これは、一般に git diff
引数を git ad
や git ads
に渡すことができることを意味します。下記の例ではいくつかの考えられるケースを示しますが、完全に網羅されているわけではありません。
git ad
の最適な起動方法を検討する場合は、Git リビジョンおよび範囲の指定に関する説明も役立つ可能性があります。
-
2 者間フォルダ比較を起動して、現在の作業ツリー内で “ステージングされていない” 変更をすべて示します。
git ad
-
2 者間フォルダ比較を起動して、現在のインデックス(ステージング領域)内で “ステージングされている” 変更をすべて示します。
git ads
-
変更されたファイル
myfile.c
への変更を示す 2 者間フォルダ比較を起動します。git ad myfile.c
-
myfile.c
のコミット 11a783 および c2061b の 2 者間フォルダ比較を起動します。git ad 11a783..c2061b myfile.c
-
2 者間フォルダ比較を起動し、ハッシュ
c2061b
を使ったコミットによって適用される変更をすべて示します。git ad c2061b^!
zsh
をシェルとして使用し、EXTENDEDGLOB
オプションが設定される場合は、^
をエスケープする必要があります。git ad c2061b\^!
-
2 者間フォルダ比較を起動し、
master
およびbugfix
ブランチ間の変更をすべて示します。git ad master..bugfix
JetBrains Aqua、AppCode、CLion、DataGrip、DataSpell、GoLand、IntelliJ、IDEA、MPS、PhpStorm、PyCharm、Rider、RubyMine、および WebStorm
JetBrains の Aqua、AppCode、CLion、DataGrip、DataSpell、GoLand、IntelliJ IDEA、MPS、PhpStorm、PyCharm、Rider、RubyMine、および WebStorm は、ファイルとフォルダの比較、およびファイル マージで Merge が使用されるように設定できます。以下の手順は、これらの JetBrains IDE のバージョン 2022.2 および 2022.3 でテスト済みです。
JetBrains IDE で Merge をファイルとフォルダ比較ツールとして使用するための設定:
-
アプリケーション メニューから、Preferences…(2022.2 以前)または Settings…(2022.3 以降)を選択します。
-
Preferences または Settings ウインドウで、左側の設定一覧から Tools▸Diff & Merge▸External Diff Tools を選択します。
-
Enable external tools チェックボックスをオンにします。
-
Configure external tools で、+ ボタンをクリックします。
-
Add An External Tool ウインドウで、以下のように設定します。
Tool group:Diff tool
Program path:/Applications/Araxis Merge.app/Contents/Utilities/compare
Tool name:Araxis Merge
Argument pattern:-3 -a3 %1 %2 %3 -
Test Diff ボタンをクリックします。2 者間比較の Araxis Merge ウインドウが表示されます。比較を閉じます。
-
Test Three-Side Diff ボタンをクリックします。3 者間比較の Araxis Merge ウインドウが表示されます。 比較を閉じます。
-
Configure external diff/merge tools associated with a file type テーブルの Default 行で “Diff Tool” として Araxis Merge を選択します。
JetBrains IDE で Merge をマージ ツールとして使用するための設定:
-
アプリケーション メニューから、Preferences…(2022.2 以前)または Settings…(2022.3 以降)を選択します。
-
Preferences または Settings ウインドウで、左側の設定一覧から Tools▸Diff & Merge▸External Diff Tools を選択します。
-
Enable external tools チェックボックスをオンにします。
-
Configure external tools で、+ ボタンをクリックします。
-
Add An External Tool ウインドウで、以下のように設定します。
Tool group:Merge tool
Program path:/Applications/Araxis Merge.app/Contents/Utilities/compare
Tool name:Araxis Merge
Argument pattern:-3 -a2 -title1:Theirs -title2:Ancestor -title3:Yours %2 %3 %1 %4 -
Trust process exit code チェックボックスがオフになっていることを確認します。
compare
からの終了コードは、出力ファイルが更新されたかどうかを示すわけではありません。 -
Test Merge ボタンをクリックします。3 者間比較の Araxis Merge ウインドウが表示されます。比較を閉じます。
-
Merge In External Tool ダイアログで、Mark as Resolved ボタンをクリックします。
-
Test Complete ダイアログで、OK ボタンをクリックします。
-
Add An External Tool ウインドウで、OK ボタンをクリックします。
-
Configure external diff/merge tools associated with a file type テーブルの Default 行で “Merge Tool” として Araxis Merge を選択します。
JetBrains IDE がメモリに保存しているファイルに対して、Araxis Merge を使用して変更を加えた場合(マージ操作の後など)、メモリ内のファイルを保持するか、またはディスク上の修正ファイルの内容で更新するかを JetBrains IDE から尋ねられることがあります。ほとんどの場合は、マージ操作後のディスクから変更を読み込みたいでしょう。
MacHg
MacHg macOS のために完全に完全に機能するフリーの Mercurial クライアントです。MacHg は Araxis Merge の組み込みサポートを提供します。
以下の手順は MacHg v0.9.25 でテストされています。
Merge を使用できるように MacHg を設定するには、以下の手順に従います。
- MacHg の Preferences ウインドウを開きます。
- Mercurial ページを選択します。
- [Merge and Diff Tool]セクションで、[For Diffs use] および [For Merges use] の両フィールドに AraxisMerge 選択します。
Mercurial
Merge は Mercurial と強固に統合されます。Araxis では、Merge が Mercurial ディポ のファイルに直接アクセスできるように Mercurial ファイルシステム プラグイン を提供しています。また、Merge では バージョン ボタン ドロップダウン バージョン メニューに、比較されている各ファイルの別のリビジョンを持たせることができます。詳細については、テキスト ファイル(または、入力/ペーストしたテキスト)の比較を参照してください。
Mercurial のファイル/フォルダ比較およびファイル マージ操作で Merge が使用されるように設定できます。比較統合では Extdiff extension を使用します。これは Mercurial によって提供されます。
以下の手順は Mercurial v1.8.4 でテストされています。
ファイル マージで Araxis Merge を使用するには、Mercurial を以下のように設定します。
-
インストール方法トピックの Merge コマンドライン ユーティリティのインストールセクションで説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
-
適切な Mercurial 構成ファイルを更新して以下のマージ プログラム 設定を追加します。
[merge-tools] araxismergetool.premerge = False araxismergetool.args = $other $base $local $output araxismergetool.executable = /Applications/Araxis Merge.app/Contents/Utilities/araxishgmerge araxismergetool.checkconflict = True araxismergetool.binary = True araxismergetool.gui = True
ファイル比較で Araxis Merge を使用するには、Mercurial を以下のように設定します。
インストール方法ページの Merge コマンドライン ユーティリティのインストール トピックで説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
-
適切な Mercurial 構成ファイルを更新して、新しい
hg
サブコマンドarxdiff
を作成します。[extensions] extdiff = [extdiff] cmd.arxdiff = /Applications/Araxis Merge.app/Contents/Utilities/compare opts.arxdiff = -wait -title1:$plabel1 -title2:$clabel -2 $parent $child
compare
ユーティリティへの-wait
引数は、Merge 内で異なるファイル タイプ(テキスト、バイナリ、イメージ)としてファイルを再比較できるようにするため、また、Mercurial がフォルダ比較を呼び出した場合にそのフォルダ比較からファイル比較を呼び出すために必要です。
arxdiff の使用例:
-
変更されたファイル
myfile.c
への変更を示す 2 者間ファイル比較を起動します。hg arxdiff myfile.c
-
myfile.c
のリビジョン 1 と 2 について 2 者間ファイル比較を起動します。hg arxdiff -r1 -r2 myfile.c
-
現在の作業ディレクトリ内の全変更を示す、2 者間ファイル比較または 2 者間フォルダ比較(変更されたファイル数に応じて)を起動します。
hg arxdiff
-
ID 番号 0bc544fad9e6 で設定された変更によって適用される全変更を示す、2 者間ファイル比較または 2 者間フォルダ比較(変更されたファイル数に応じて)を起動します。
hg arxdiff -c 0bc544fad9e6
Path Finder
Path Finder は、ファイル比較に Araxis Merge を使用するよう設定できます。Path Finder で 2 つのファイルを選択したときに、Compare… コンテキスト メニューから Merge を起動させることができます。
以下の手順は Path Finder 7 でテストされています。
Path Finder のファイル比較で Merge が使用されるようにするには、以下のように設定します。
-
Path Finder で、Path Finder メニューから Preferences… を選択します。
-
Features タブを選択します。
-
File Comparison 項目を選択します。
-
Select tool… ボタンをクリックします。
-
次の場所に移動して選択します。
/Applications/Araxis Merge.app/Contents/Utilities/compare
-
Choose tool ボタンをクリックします。
-
Preferences ウインドウを閉じます。
Perforce
Merge は Perforce と強固に統合されます。
Merge から Perforce レポジトリを直接参照するには(廃止予定):
- Perforce ファイルシステム プラグイン(廃止予定) トピックの使用説明をご覧ください。
P4V(2007.2 リリース以降)のファイル比較とマージで Merge が使用されるように設定するには:
-
インストール方法トピックの Merge コマンドライン ユーティリティのインストールセクションで説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
-
P4V メニューから Preferences… を選択します。
-
Diff タブを選択します。
-
Other application ラジオ ボタンをオンにします(古いバージョンの P4V では Use external application)。
-
Location 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/araxisp4diff
-
Arguments フィールドが %1 %2 であることを確認してください。この手順は、古いバージョンの P4V では無視してください。このフィールドはありません。
-
Merge タブを選択します。
-
Other application ラジオ ボタンをオンにします(古いバージョンの P4V では Use external application)。
-
Location 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/araxisp4winmrg
-
Arguments フィールドが %b %1 %2 %r であることを確認してください。この手順は、古いバージョンの P4V では無視してください。このフィールドはありません。
-
OK ボタンをクリックして Preferences ダイアログを閉じます。
-
これで、P4V は比較操作と対話型マージ操作のために Merge を開くようになります。
Merge を使用できるように Perforce コマンド ライン ツール(p4
)を設定するには:
-
インストール方法トピックの Merge コマンドライン ユーティリティのインストールセクションで説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
-
P4DIFF
環境変数にaraxisp4diff
ユーティリティの完全なパスを設定します。同様にP4MERGE
環境変数にaraxisp4winmrg
の完全なパスを設定します。.bash_profile
に以下を追加します:export P4DIFF='/Applications/Araxis\ Merge.app/Contents/Utilities/araxisp4diff' export P4MERGE='/Applications/Araxis\ Merge.app/Contents/Utilities/araxisp4winmrg'
-
新しいコマンドシェルを開くとき Merge は Perforce コマンドライン ツールによって適切に呼びされます。たとえば、次のように指定できます。
p4 diff -t
デフォルトの変更リスト(あらゆるバイナリやイメージファイルも含む)で編集のために開いた各ファイルの 2 者間比較を開始します。
SmartGit/Hg
ファイル比較およびマージ操作で Araxis Merge が使用されるように SmartGit/Hg を設定できます。
ファイル比較で Araxis Merge を使用するには、SmartGit/Hg を以下のように設定します。
-
SmartGit/Hg メニューから Preferences… を選択します。
-
左側のツリーで Tools を展開します。
-
左側のツリーで Diff Tools を選択します。
-
テーブルの * パターンを選択してから、Edit… ボタンをクリックします。
-
External diff tool ラジオ ボタンを選択します。
-
Command 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/compare
-
Arguments 入力フィールドで次のように入力します。
-wait -title1:"Repo version" "${leftFile}" "${rightFile}"
-
OK をクリックして変更を適用し、Edit ダイアログを終了します。
ファイル マージで Araxis Merge を使用するには、SmartGit/Hg を以下のように設定します。
-
SmartGit/Hg メニューから Preferences… を選択します。
-
左側のツリーで Tools を展開します。
-
左側のツリーで Conflict Solver を選択します。
-
External Conflict Solver ラジオ ボタンを選択します。
-
Command 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/compare
-
Arguments 入力フィールドで次のように入力します。
-3 -wait -a2 -title1:"Yours" -title2:"Common ancestor" -title3:"Theirs" "${leftFile}" "${baseFile}" "${rightFile}" "${mergedFile}"
-
OK をクリックして変更を適用し、Preferences ダイアログを終了します。
SmartSVN/SmartCVS
SmartSVN および SmartCVS クライアントは、ファイル比較とマージ操作で Araxis Merge が使用されるように設定できます。
矛盾を解決するために外部ツールを使用する機能は SmartCVS の Foundation バージョンでは利用可能ではないことに注意を払ってください。
以下の手順は SmartSVN v7.5.4 でテストされています。
ファイル比較で Araxis Merge を使用するには、SmartSVN/SmartCVS を以下のように設定します。
-
SmartSVN または SmartCVS メニューから Preferences… を選択します。
-
左のツリーで File Compare を選択します(SmartCVS の File Comparators)。
-
テーブルの * パターンを選択してから、Edit… ボタンをクリックします。
-
External Comparator ラジオ ボタンを選択します。
-
Command 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/compare
-
Arguments 入力フィールドで次のように入力します。
-wait -2 "${leftFile}" "${rightFile}
-
OK をクリックして変更を適用し、Edit ダイアログを終了します。
ファイル マージで Araxis Merge を使用するには、SmartSVN/SmartCVS を以下のように設定します。
-
SmartSVN または SmartCVS メニューから Preferences… を選択します。
-
左のツリーで Actions の下の Conflict Solverを選択します。
-
External Conflict Solver ラジオ ボタンを選択します。
-
Command 入力フィールドで次のように入力します。
/Applications/Araxis Merge.app/Contents/Utilities/compare
-
Arguments 入力フィールドで次のように入力します。
-3 -wait -a3 "${leftFile}" "${rightFile}" "${baseFile}" "${mergedFile}"
メモ:SmartCVS の使用時は、
"${baseFile}"
テンプレートは必要ありません。 -
OK をクリックして変更を適用し、Preferences ダイアログを終了します。
SourceTree
Atlassian SourceTree Git と Mercurial のクライアントです。以下の手順は SourceTree v1.6.0 でテストされています。
ファイル比較のために Merge を使用できるように SourceTree を設定するには、以下の手順に従います。
-
SourceTree Preferences ダイアログを開いて、Diff タブを選択します。
-
Visual Diff Tool として Araxis Merge を選択します。
ファイルマージのために Merge を使用できるように SourceTree を設定するには、以下の手順に従います。
-
SourceTree Preferences ダイアログを開いて、Diff タブを選択します。
-
Merge Tool として Araxis Merge を選択します。
Subclipse
Subclipse は、Eclipse IDE の中で Subversion のサポートを提供するための Eclipse プラグインです。Merge をマージ ツールとして使用するように設定できます。設定すると、Eclipse の Team メニューから Edit Conflicts を選択すればいつでも、Merge が使用されるようになります。
Merge は Subversion に直接統合することもできます。詳細については、Subversion の項目をご覧ください。
以下の手順は Subclipse v1.8.18、Eclipse v4.2.1 および Subversion v1.6.18 でテストされています。
Merge を Subclipse ファイルマージ ツールとしてとして設定するには:
-
インストール方法トピックの Merge コマンドライン ユーティリティのインストールセクションで説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
-
残念ながら、Subclipse はユーザ指定の external conflict program パラメーターのリストを適切に分割しないため、
compare
ユーティリティを直接使用して Merge を起動することはできません。このため、このパラメーターのリストを適切に分割するシェル スクリプトを作成する必要があります。次の内容を含む
/usr/local/bin/subclipse-shim.sh
ファイルを作成します。#!/bin/sh eval "$*"
-
Eclipse の Preferences ウインドウで Team▸SVN▸Diff/Merge ページを選択します。
-
External ラジオ ボタンを選択します。
-
Adjacent 入力フィールドで次のように入力します。
/bin/sh
-
Parameters フィールドで次のように入力します。
/usr/local/bin/subclipse-shim.sh /Applications/Araxis\ Merge.app/Contents/Utilities/compare -wait -merge -a1 -3 -title1:"Common Ancestor" -title2:"Theirs" -title3:"Yours" "${base}" "${theirs}" "${yours}" "${merged}"
-
Apply ボタンをクリックします。
Subversion
Merge は Subversion と完全に統合されます。Araxis では、Merge が Subversion リポジトリを直接参照できるようにSubversion ファイルシステム プラグインを提供しています。たとえば、ソース コードのブランチを、クライアントの作業領域で同期をとることなく、リポジトリ内で直接比較することができるということです。また、Merge では バージョン ボタン ドロップダウン バージョン メニューに、比較されている各ファイルの別のリビジョンを持たせることができます。詳細については、テキスト ファイル(または、入力/ペーストしたテキスト)の比較を参照してください。
Subversive、svnX、および Subclipse の項目もご覧ください。
Merge から Subversion レポジトリを直接参照するには:
- Subversion ファイルシステム プラグイン トピックの使用説明をご覧ください。
Merge を使用できるように Subversion コマンド ライン ツール(svn)を設定するには:
以下の手順は Subversion v1.6.18 と v1.7.8 でテストされています。
-
テキスト エディタで “SVN configuration area” 構成ファイルを開きます。このファイルのデフォルト ロケーションは
~/.subversion
です。 -
diff-cmd
を指定する行のコメントを外して Merge のパスとして、ご自分のマシン上にインストールしたaraxissvndiff
実行ファイルを設定します。diff-cmd = /Applications/Araxis Merge.app/Contents/Utilities/araxissvndiff
-
Subversion コマンド ライン クライアントのバージョン 1.5 以降では、矛盾しない変更は自動的にマージし、不一致変更は Merge を起動して対話的に解決するよう設定することができます。
矛盾しない変更のマージは Subversion 自体に実行させ、不一致変更についてのみ Merge を使用したい場合は、
merge-tool-cmd
行を追加して、Mergearaxissvnmerge
実行可能ファイルのパスを設定します。merge-tool-cmd = /Applications/Araxis Merge.app/Contents/Utilities/araxissvnmerge
merge-tool-cmd
オプションは、diff3-cmd
オプションの値が定義されている場合には無視されます。diff3-cmd
オプションの値が定義されていないことを確認してください。 -
あるいは、すべての変更の解決に Merge を使用したいという場合は、
merge-tool-cmd
ではなくdiff3-cmd
設定オプションを定義します。(メモ:diff3-cmd
は、v1.5 より前のバージョンの Subversion における、唯一のオプションです)。定義されている場合、
diff3-cmd
には Mergearaxissvndiff3
コマンド ライン ユーティリティのパスを設定する必要があります。diff3-cmd = /Applications/Araxis Merge.app/Contents/Utilities/araxissvndiff3
-
変更した構成ファイルを保存し、テキスト エディタを終了します。
-
これで、2 者間または 3 者間の比較を必要とする Subversion コマンド(たとえば
svn diff
、svn update
、およびsvn merge
)を実行すると、Merge が起動されるようになりました。
Subversive
Subversive は公式の Eclipse プラグインで、Merge をマージ ツールとして使用するように設定できます。これは Eclipse IDE 内で Subversion のサポートを提供します。設定すると、Eclipse の Team メニューから Edit Conflicts を選択すればいつでも、Merge を使用してファイル比較およびマージが実行されるようになります。
Merge は Subversion に直接統合することもできます。詳細については、Subversion の項目をご覧ください。
以下の手順は Subversive v1.0.0、Eclipse v4.2.1 および Subversion v1.6.18 でテストされています。
Merge を Subversive のファイル比較ツールおよびマージ ツールとして設定するには:
-
残念ながら、Subversive はユーザ指定のプログラム引数のリストを適切に分割しないため、
compare
ユーティリティを直接使用して Merge を起動することはできません。このため、この引数リストを適切に分割するシェル スクリプトを作成する必要があります。次の内容を含む新しい
/usr/local/bin/subversive-shim.sh
シェル スクリプトを作成します。#!/bin/sh eval "$*"
-
Subversive でファイル比較に外部ツールを使用するよう設定するため、ユーザはそのツールの場所とそこに送られる引数のリストを指定します。この引数リストを設定する場合、比較されるファイルの場所を表すために
${mine}
、${base}
および${theirs}
トークンが使用されます。ファイル比較が呼び出されると、引数リストにあるトークンが比較されるファイルのパスに置き換えられます。残念ながら、Subversive は、Eclipse でファイル比較が起動される方法に応じて、パスに置き換えるトークンに一貫性がありません。リモート ファイルを渡すのに、${base}
を使用することもあれば、${theirs}
を使用することもあります。幸い、${base}
が使用される場合は、${theirs}
に対して置き換えるテキストはないので、${mine}
および${theirs}
からのパスを使用して Merge を起動するスクリプトを作成することができます。ただし、これは${theirs}
が空テキストで、${mine}
および${base}
のパスが代わりに比較される場合を除きます。次の内容を含む
/usr/local/bin/araxissubversivediff.osa
ファイルを作成します。#!/usr/bin/osascript on run args tell application "Araxis Merge" launch set _left to (POSIX path of ((item 1 of args as POSIX file) as alias)) if not item 2 of args equals "" set _right to (POSIX path of ((item 2 of args as POSIX file) as alias)) else set _right to (POSIX path of ((item 3 of args as POSIX file) as alias)) end if set _document to compare {_left, _right} tell _document activate end tell try repeat while exists _document delay 1 end repeat on error end try end tell end run
Eclipse Preferences ウインドウで TeamSVNDiff Viewer ページを選択します。
Add… ボタンをクリックします。
-
Extension or mime-type フィールドで次のように入力します。
*
-
Diff program arguments ボックス内の Program Path フィールドで、次のように入力します。
/bin/sh
-
その下にある大きなフィールドで次のように入力します。
/usr/local/bin/subversive-shim.sh /usr/bin/osascript /usr/local/bin/araxissubversivediff.osa "${mine}" "${theirs}" "${base}"
-
Merge program arguments ボックス内の Program Path フィールドで、次のように入力します。
/bin/sh
-
その下にある大きなフィールドで次のように入力します。
/usr/local/bin/subversive-shim.sh /Applications/Araxis\ Merge.app/Contents/Utilities/compare -wait -merge -a1 -3 -title1:"Common Ancestor" -title2:"Yours" -title3:"Theirs" "${base}" "${mine}" "${theirs}" "${merged}"
OK ボタンをクリックします。
Diff Viewer テーブルの新しい設定を確認します。
適用 ボタンをクリックします。
Surround SCM
Surround SCM は Araxis Merge の組み込みをサポートします。Araxis Merge ファイル比較とマージのデフォルト アプリケーションとして設定するには、次のようにします。
- Tools メニューの User Options… を選択します。
- Diff/Merge タブを選択します。
- 選択したファイル タイプの設定を編集します。
- 比較アプリケーション ドロップダウン リストから Araxis Merge を選択します。
詳細については、Surround SCM ウェブサイトを参照してください。
svnX
svnX は Subversion クライアントのほとんどの機能のためのオープン ソース GUI です。これは Merge の組み込みをサポートします。
Merge を使用できるように svnX を設定するには:
- Araxis Merge を svnX 環境設定ウインドウの Diff application として選択します。
- svnX が Merge と一緒に動作するためのセットアップに関する情報は、svnX オンラインヘルプをお読みください。書き込み時、svnX は
araxissvndiff
コマンドが特定の場所にインストールされていることを必要とします。コマンドは/Applications/Araxis Merge.app/Contents/Utiltities
フォルダから必要な場所にコピーすることができます。
TortoiseHg
ファイル比較およびマージ操作で Araxis Merge が使用されるように TortoiseHg を設定できます。
ファイル比較で Araxis Merge を使用するには、TortoiseHg を以下のように設定します。
-
Mercurial セクションで説明されているように、ファイル比較で Araxis Merge を使用するよう Mercurial を設定します。
-
TortoiseHg メニューから Preferences を選択します。
-
左側の一覧から TortoiseHg を選択します。
-
Visual Diff Tool ドロップダウン フィールドで、arxdiff を選択します。
-
OK をクリックして変更を適用し、TortoiseHg Settings ウインドウを閉じます。
ファイル マージで Araxis Merge を使用するには、TortoiseHg を以下のように設定します。
-
Mercurial セクションで説明されているように、ファイル マージで Araxis Merge を使用するよう Mercurial を設定します。
-
TortoiseHg メニューから Preferences を選択します。
-
左側の一覧から TortoiseHg を選択します。
-
Three-way Merge Tool ドロップダウン フィールドで、araxismergetool を選択します。
-
OK をクリックして変更を適用し、TortoiseHg Settings ウインドウを閉じます。
Tower
Tower は Git 用のクライアントで、優先的に使用する比較およびマージ ツールとして Araxis Merge を簡単に設定できます。以下の手順は Tower v1.5.0 でテストされています。
Merge を使用できるように Tower を設定するには、以下の手順に従います。
- Tower の Preferences ウインドウを開きます。
- Git Config タブを選択します。
- Preferred Diff Tool および Preferred Merge Tool ドロップダウン リストで、Araxis Merge を選択します。
Veracity
Veracity はオープンソースで、分散型バージョン管理と Windows、macOS、および Linux のためのバグトラッキング システムです。SourceGear は Veracity を運営する企業で役に立つ情報を提供してくれました。
Veracity は diff とマージ操作の両方で Araxis Merge をそのまま使用できます。単に外部の比較やマージツールをサポートする任意のコマンドとして --tool araxis
を使用します。以下に説明するように別の方法としては、さまざまな操作のためのデフォルトのツールとして Merge を設定することができます。
Araxis Merge の Veracity での使用に関するサポートは http://veracity-scm.com/qa を参照してください。
Araxis Merge をテキスト ファイルのデフォルト対話型比較ツールにするには:
vv config set filetoolbindings/diff/:text/gui araxis
Araxis Merge をバイナリ ファイルのデフォルト対話型比較ツールにするには:
vv config set filetoolbindings/diff/:binary/gui araxis
Araxis Merge をテキスト ファイルのデフォルト対話型マージツールにするには:
vv config set filetoolbindings/merge/:text/resolve araxis
Araxis Merge をバイナリ ファイルのデフォルト対話型マージツールにするには:
vv config set filetoolbindings/merge/:binary/resolve araxis
Versions
Subversion 用の Versions クライアントは Araxis Merge を使用するために簡単に設定できます。以下の手順は Versions v1.2.2 でテストされています。
Merge を Versions 比較ツールとして設定するには:
- Versions で Preferences ウインドウを開きます。
- Araxis Merge を File Comparison ドロップダウン フィールドから選択します。