English | 日本語
ホーム > Merge (Mac) > ドキュメントの目次 > ソース管理、構成管理およびその他のアプリケーションとの統合

ソース管理、構成管理およびその他のアプリケーションとの統合

Merge for Mac OS X はほとんどのバージョン管理(VC)、ソフトウェア構成管理(SCM)、およびサードパーティ ファイル比較(diff)またはファイル マージ ツールを指定できるその他のアプリケーションと統合できます。このページには、Merge を以下のアプリケーションと統合するための説明が含まれています。

ご自分が選択したアプリケーションがこの表にリストされていない場合は、Merge for Windows と他のアプリケーションの統合 の情報が役に立つ出発点になるかもしれません。また、ご自身で Merge AppleScript API または コマンドライン ユーティリティを使用して、Merge を別のアプリケーションと統合することも可能です。

Merge をほかのシステムと統合する方法をご存じの場合、あるいは以下に提供されている情報に対して訂正がある場合は、内容を更新いたしますので、その旨弊社までご連絡ください。

多くの SCM システムとの統合には、1 つのファイルから変更された、元を同じくする 2 つの修正版を比較できるようにするため、Merge の Professional Edition が必要となります。

AccuRev

AccuRev このリンクは外部の Web サイトです Mac OS X クライアントはファイル比較とマージ操作のために Araxis Merge を使用するように設定できます。

以下の手順は、AccuRev 5.2 でテスト済みです。

AccuRev クライアントのファイル比較で Merge が使用されるように設定するには:
  • AccuRev クライアントで、[Tools]メニューから[Preferences…]を選択します。
  • Diff/Merge]タブを選択します。
  • Diff]入力フィールドで次のように入力します。

    /usr/local/bin/compare -wait -2 %1% %2%

    メモ:/usr/local/bin 部分は必要に応じて、マシン上の Araxis Merge compare ユーティリティへの完全パスに置き換えてください。

  • 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 をスクリプト実行可能ファイルにします。たとえば、OS X 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 /usr/local/bin/compare -wait -a3 -3 %1% %2% %a% %o%

    メモ:/usr/local/bin/ 部分(2 箇所)はそれぞれ必要に応じて、ac-merge-shim.sh スクリプトへの完全パス、および Araxis Merge コマンドライン compare ユーティリティへの完全パスに置き換えてください。

  • Preferences ウインドウを閉じます。

Dreamweaver

Adobe(Macromedia) Dreamweaver このリンクは外部の Web サイトです CS3 は Araxis Merge と統合してファイルの 2 者間比較を起動することができます。したがって、Merge を Dreamweaver とのみ使用するのであれば、Standard Edition で十分です。

Dreamweaver CS3 で Merge を比較ツールとして使用するための設定:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • Dreamweaver > 環境設定...を選択します。
  • ファイルの比較]カテゴリを選択します。
  • 参照...]ボタンをクリックすると、[外部エディタの選択]ダイアログが開きます。
  • インストールしたフォルダから Merge compare コマンドライン ユーティリティを見つけて選択してください。
  • 開く]ボタンをクリックします。Merge compare コマンドライン ユーティリティへの完全なパスが[アプリケーションを選択してファイルを比較]エントリ フィールドに表示されます。
  • OK]をクリックして[環境設定]ダイアログを閉じます。

Eclipse

Eclipse このリンクは外部の Web サイトです については、Subclipse の項目をご覧ください。

Git

Merge は Git このリンクは外部の Web サイトです と強固に統合されます。Araxis では、Merge が Git ディポ のファイルに直接アクセスできるように Git ファイル システム プラグインを提供しています。また、Merge では バージョンボタン ボタン ドロップダウン バージョン メニューに、比較されている各ファイルの別のリビジョンを持たせることができます。詳細については、テキスト ファイルの比較(または、入力/貼り付けしたテキスト)を参照してください。

Git のファイル比較およびマージ操作で Merge が使用されるように設定できます。

新しい Git バージョン

Git v1.6.4.では、 Araxis Merge がサポートされています。以下の設定手順は Git v1.7.1 でテストを行いました。

Git v1.6.4 以上でファイル比較およびファイル マージに Araxis Merge を使用するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • 以下の diff および merge ツール設定を追加して、Git 構成ファイル このリンクは外部の Web サイトです を更新してください。

    [diff] 
    tool = araxis
    
    [merge] 
    tool = araxis
  • ファイルを比較するには、git difftool このリンクは外部の Web サイトです コマンドを使用します。ファイルのマージ後、ブランチまたはリモート リポジトリの不一致変更を解決するには、git mergetool このリンクは外部の Web サイトです を使用します。

古い Git バージョン

下記の手順で、v1.6.4 より前のバージョンの Git を設定して Merge を使用できます(Git v1.6.1でテスト済み)。

古いバージョンの Git でファイルの比較に Araxis Merge を使用するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • 以下の diff ツール設定を追加して、Git 構成ファイル このリンクは外部の Web サイトです を更新してください。

    [diff] 
    external = /Users/<userid>/bin/araxisgitdiff
    renames = true

    メモ:上記のパスの /Users/<userid>/bin/araxisgitdiff 部分を、お使いのマシンで Merge araxisgitdiff コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

  • 古いバージョンの Git を使ってファイルを比較するには、git diff このリンクは外部の Web サイトです コマンドを使用します。
古いバージョンの Git でファイルのマージに Araxis Merge を使用するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • 以下のマージ ツール設定を追加して、Git 構成ファイル このリンクは外部の Web サイトです を更新してください。

    [mergetool "araxis"] 
    cmd = /Users/<userid>/bin/araxisgitmerge "$PWD/$REMOTE" "$PWD/$BASE" "$PWD/$LOCAL" "$PWD/$MERGED"
    trustExitCode = false
    
    [mergetool]
    keepBackup = false
    
    [merge] 
    tool = araxis

    メモ:上記のパスの /Users/<userid>/bin/araxisgitmerge 部分を、お使いのマシンで Merge araxisgitmerge コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

  • ファイルのマージ後、ブランチまたはリモート リポジトリの不一致変更を解決するには、git mergetool このリンクは外部の Web サイトです を使用します。

Interface Builder

Apple の Interface Builder このリンクは外部の Web サイトですWrite Class Files... メニュー オプションを持っています(Inspector で作成するクラスのためのソースファイルを生成する)。Interface Builder は既にプロジェクトに存在するものと新しく生成されたクラス ファイルを置き換えるかマージすることを問合わせます。マージすることを選択した場合は FileMerge(opendiff コマンドによって呼び出された)でファイルを開きます。しかしながら FileMerge の代わりに Araxis Merge を使用することは可能です。

Merge を Interface Builder 比較ツールとして設定するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • ターミナル ウインドウから次のコマンドを実行します。

    cd /Developer/usr/bin
    sudo mv opendiff opendiff-old
    sudo ln -s /Users/<userid>/bin/araxisopendiff opendiff

    メモ:上記のパスの /Users/<userid>/bin/araxisopendiff 部分を、お使いのマシンで Merge araxisopendiff コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

    メモ:もし他の人があなたのマシンを使用する場合、araxisopendiff コマンドにアクセスする権限を持っていることを確認してください。

この変更が同じく opendiff コマンドを実行しようとする他のどんなアプリケーション(Xcode を含めて)にも影響を与えることに注意してください。

MacHg

MacHg このリンクは外部の Web サイトです は OS X 用のフル機能のフリー Mercurial クライアントです。MacHg は Araxis Merge のためのビルトイン サポートを提供します。

Merge を使用できるように MacHg を設定するには、以下の手順に従います。
  • MacHg の環境設定ウインドウ([MacHG] > [ Preferences])ウインドウを開きます。
  • Mercurial]ページを選択します。
  • Merge and Diff Tool]セクションで、[For Diffs use]および[For Merges use]の両フィールドに "AraxisMerge" 選択します。

Mercurial

Merge は Mercurial このリンクは外部の Web サイトです と強固に統合されます。Araxis では、Merge が Mercurial ディポ のファイルに直接アクセスできるように Mercurial ファイル システム プラグインを提供しています。また、Merge では バージョンボタン ボタン ドロップダウン バージョン メニューに、比較されている各ファイルの別のリビジョンを持たせることができます。詳細については、テキスト ファイルの比較(または、入力/貼り付けしたテキスト)を参照してください。

Mercurial のファイル/フォルダ比較およびファイル マージ操作で Merge が使用されるように設定できます。比較統合では Extdiff extension このリンクは外部の Web サイトです を使用します。これは Mercurial によって提供されます。

以下の統合手順は Mercurial v1.8.4 でテストされています。

ファイル マージで Araxis Merge を使用するには、Mercurial を以下のように設定します。
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • 適切な Mercurial 構成ファイル このリンクは外部の Web サイトです を更新して以下のマージ プログラム このリンクは外部の Web サイトです 設定を追加します。

    [merge-tools]
    araxismergetool.premerge = False
    araxismergetool.args = $other $base $local $output
    araxismergetool.executable = /Users/<userid>/bin/araxishgmerge
    araxismergetool.checkconflict = True
    araxismergetool.binary = True
    araxismergetool.gui =  True

    上記のパスの /Users/<userid>/bin/araxishgmerge 部分を、お使いのマシンで Merge araxishgmerge コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

ファイル比較で Araxis Merge を使用するには、Mercurial を以下のように設定します。
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • 適切な Mercurial 構成ファイル このリンクは外部の Web サイトです を更新して、新しい hg サブコマンド arxdiff を作成します。

    [extensions]
    extdiff = 
    
    [extdiff]
    cmd.arxdiff = /Users/<userid>/bin/compare
    opts.arxdiff = -2 -wait

    メモ:上記のパスの /Users/<userid>/bin/compare 部分を、お使いのマシンで Merge compare コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

    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

Perforce

Merge は Perforce このリンクは外部の Web サイトです と強固に統合されます。Araxis では、Merge が Perforce ディポを直接参照できるように Perforce ファイル システム プラグインを提供しています。たとえば、ソース コードの分岐を、クライアントの作業領域で同期をとることなく、ディポ内で直接比較することができるということです。また、Merge では バージョンボタン ボタン ドロップダウン バージョン メニューに、比較されている各ファイルの別のリビジョンを持たせることができます。詳細については、テキスト ファイルの比較(または、入力/貼り付けしたテキスト)を参照してください。

Merge から Perforce レポジトリを直接参照するには:
P4V(2007.2 リリース以降)のファイル比較とマージで Merge が使用されるように設定するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • P4V]メニューから[環境設定...]を選択します。
  • Diff]タブを選択します。
  • Other application]ラジオ ボタンをオンにします(古いバージョンの P4V では[Use external application])。
  • Location]フィールドでは[Browse]ボタンをクリックし、ユーザー提供の diff アプリケーションとして、ご自身がインストールしたフォルダの araxisp4diff ファイルを選択します。
  • Arguments]フィールドが %1 %2 であることを確認してください。この手順は、古いバージョンの P4V では無視してください。このフィールドはありません。
  • Merge]タブを選択します。
  • Other application]ラジオ ボタンをオンにします(古いバージョンの P4V では[Use external application])。
  • Location]フィールドには[Browse]ボタンをクリックし、あなたがインストールしたフォルダの araxisp4winmrg ファイルを選択します。
  • Arguments]フィールドが %b %1 %2 %r であることを確認してください。この手順は、古いバージョンの P4V では無視してください。このフィールドはありません。
  • OK]ボタンをクリックして[Preferences]ダイアログを閉じます。
  • これで、P4V は比較操作と対話型マージ操作のために Merge を開くようになります。
Merge を使用できるように Perforce コマンド ライン ツール(p4)を設定するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • P4DIFF 環境変数に araxisp4diff ユーティリティの完全なパスを設定します。同様に P4MERGE 環境変数に araxisp4winmrg の完全なパスを設定します。

    たとえば、~/bin に Merge コマンドライン ユーティリティを置いている場合、.bash_profile に以下のように追加します。

    export P4DIFF=$HOME/bin/araxisp4diff
    export P4MERGE=$HOME/bin/araxisp4winmrg
  • 新しいコマンドシェルを開くとき Merge は Perforce コマンドライン ツールによって適切に呼びされます。たとえば、次のように指定できます。

    p4 diff -t

    デフォルトの変更リスト(あらゆるバイナリやイメージファイルも含む)で編集のために開いた各ファイルの 2 者間比較を開始します。

SmartSVN/SmartCVS

SmartSVN このリンクは外部の Web サイトです および SmartCVS このリンクは外部の Web サイトです クライアントは、ファイル比較とマージ操作で Araxis Merge が使用されるように設定できます。

矛盾を解決するために外部ツールを使用する機能は SmartCVS の Foundation バージョンでは利用可能ではない このリンクは外部の Web サイトです ことに注意を払ってください。

ファイル比較で Araxis Merge を使用するには、SmartSVN/SmartCVS を以下のように設定します。
  • SmartSVN]または[SmartCVS]メニューから[Preferences...]を選択します。
  • 左のツリーで File Compare を選択します(SmartCVS の File Comparators)。
  • テーブルの * パターンを選択してから、[Edit...]ボタンをクリックします。
  • External Comparator]ラジオ ボタンを選択します。
  • Command]入力フィールドで次のように入力します。

    /usr/local/bin/compare

    メモ:上記のパスで /usr/local/bin はマシン上の Araxis Merge compare ユーティリティのフルパスの場所で置き換えてください。

  • Arguments]入力フィールドで次のように入力します。

    -wait -2 "${leftFile}" "${rightFile}
  • OK]をクリックして変更を適用し、Edit ダイアログを終了します。
ファイル マージで Araxis Merge を使用するには、SmartSVN/SmartCVS を以下のように設定します。
  • SmartSVN]または[SmartCVS]メニューから[Preferences...]を選択します。
  • 左のツリーで Actions の下の Conflict Solver を選択します。
  • External Conflict Solver]ラジオ ボタンを選択します。
  • Command]入力フィールドで次のように入力します。

    /usr/local/bin/compare

    メモ:上記のパスで /usr/local/bin はマシン上の Araxis Merge compare ユーティリティのフルパスの場所で置き換えてください。

  • Arguments]入力フィールドで次のように入力します。

    -3 -wait -a3 "${leftFile}" "${rightFile}" "${baseFile}" "${mergedFile}"

    メモ:SmartCVS の使用時は、"${baseFile}" テンプレートは必要ありません。

  • OK]をクリックして変更を適用し、Preferences ダイアログを終了します。

SourceTree

Atlassian SourceTree このリンクは外部の Web サイトです は Araxis Merge のためのビルトインをサポートを特徴とする Git と Mercurial のクライアントです。

Merge を使用できるように SourceTree を設定するには、以下の手順に従います。
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。ユーティリティを含んでいるディレクトリは、コマンドライン シェルの検索パス上にある必要があります。
  • SourceTree Preferences ダイアログを開いて、Diff タブを選択します。
  • Araxis MergeVisual Diff ToolMerge Tool として選択します。

Subclipse

Subclipse このリンクは外部の Web サイトです は、Eclipse IDE の中で Subversion のサポートを提供するための Eclipse プラグインで、Merge をマージ ツールとして使用するように設定できます。設定すると、Eclipse の[Team]メニューから[Edit Conflicts]を選択すればいつでも、Merge が使用されるようになります。

Merge は Subversion に直接統合することもできます。詳細については、Subversion の項目をご覧ください。

以下の手順は、Subclipse 1.6.13、Eclipse 3.6.0 および Subversion 1.6 でテスト済みです。

Merge を Subclipse ファイルマージ ツールとして設定するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • 残念ながら、Subclipse はユーザー指定の ‘external conflict program’ パラメーターのリストを適切に分割しないため、compare ユーティリティを直接使用して Merge を起動することはできません。このため、このパラメーターのリストを適切に分割するシェル スクリプトを作成する必要があります。

    次の内容を含む Users/<userid>/bin/subclipse-shim.sh ファイルを作成します。

    #!/bin/sh
    eval "$*"

    メモ:上記のパスはシェル スクリプト ファイル用に推奨される場所です。/Users/<userid> 部分はホーム ディレクトリへの完全なパスです。

  • Eclipse の[Preferences]ウインドウで[TeamSVNDiff/Merge]ページを選択します。
  • External]ラジオ ボタンを選択します。
  • Adjacent 入力フィールドで次のように入力します。

    /bin/sh
  • Parameters フィールドで次のように入力します。

    /Users/<userid>/bin/subclipse-shim.sh /Users/<userid>/bin/compare -wait -merge -a1 -3 -title1:"Common Ancestor" -title2:"Theirs" -title3:"Yours" "${base}" "${theirs}" "${yours}" "${merged}"

    メモ:上記のパスで、/Users/<userid>/bin/subclipse-shim.sh 部分をご自分のシェル スクリプトへの完全なパスに置き換え、/Users/<userid>/bin/compare 部分をマシンにインストールした Merge compare コマンドライン ユーティリティへの完全なパスに置き換えます。

  • 適用]ボタンをクリックします。

Subversion

Merge は Subversion このリンクは外部の Web サイトです と完全に統合されます。Araxis では、Merge が Subversion リポジトリを直接参照できるように Subversion ファイル システム プラグインを提供しています。たとえば、ソース コードのブランチを、クライアントの作業領域で同期をとることなく、リポジトリ内で直接比較することができるということです。また、Merge では バージョンボタン ボタン ドロップダウン バージョン メニューに、比較されている各ファイルの別のリビジョンを持たせることができます。詳細については、テキスト ファイルの比較(または、入力/貼り付けしたテキスト)を参照してください。

SubversivesvnX、および Subclipse の項目もご覧ください。

Merge から Subversion レポジトリを直接参照するには:
Merge を使用できるように Subversion コマンド ライン ツール(svn)を設定するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • テキスト エディタで "SVN configuration area" 構成ファイルを開きます。このファイルのデフォルト ロケーションは ~/.subversion です。
  • diff-cmd を指定する行のコメントを外して Merge のパスとして、ご自分のマシン上にインストールした araxissvndiff 実行ファイルを設定します。

    diff-cmd = /Users/<userid>/bin/araxissvndiff

    メモ:上記のパスの /Users/<userid>/bin/araxissvndiff 部分を、お使いのマシンで Merge araxissvndiff コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

  • Subversion コマンド ライン クライアントのバージョン 1.5 以降では、矛盾しない変更は自動的にマージし、不一致変更は Merge を起動して対話的に解決するよう設定することができます。

    矛盾しない変更のマージは Subversion 自体に実行させ、不一致変更についてのみ Merge を使用したい場合は、merge-tool-cmd 行を追加して、Merge araxissvnmerge 実行可能ファイルのパスを設定します。

    merge-tool-cmd = /Users/<userid>/bin/araxissvnmerge

    メモ:上記のパスの /Users/<userid>/bin/araxissvnmerge 部分を、お使いのマシンで Merge araxissvnmerge コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

    merge-tool-cmd オプションは、diff3-cmd オプションの値が定義されている場合には無視されます。diff3-cmd オプションの値が定義されていないことを確認してください。

  • あるいは、すべての変更の解決に Merge を使用したいという場合は、merge-tool-cmd ではなく diff3-cmd 設定オプションを定義します(メモ:diff3-cmd は、v1.5 より前のバージョンの Subversion における、唯一のオプションです)。

    定義されている場合、diff3-cmd には Merge araxissvndiff3 コマンド ライン ユーティリティのパスを設定する必要があります。

    diff3-cmd = /Users/<userid>/bin/araxissvndiff3

    メモ:上記のパスの /Users/<userid>/bin/araxissvndiff3 部分を、お使いのマシンで Merge araxissvndiff3 コマンドライン ユーティリティをインストールしたディレクトリへの完全なパスに置き換えます。

  • 変更した構成ファイルを保存し、テキスト エディタを終了します。
  • これで、2 者間または 3 者間の比較を必要とする Subversion コマンド(たとえば svn diffsvn update、および svn merge)を実行すると、Merge が起動されるようになりました。

Subversive

Subversive このリンクは外部の Web サイトです は公式の Eclipse プラグインで、Merge をマージ ツールとして使用するように設定できます。これは Eclipse IDE 内で Subversion のサポートを提供します。設定すると、Eclipse の[Team]メニューから[Edit Conflicts]を選択すればいつでも、Merge を使用してファイル比較およびマージが実行されるようになります。

Merge は Subversion に直接統合することもできます。詳細については、Subversion の項目をご覧ください。

以下の手順は、Subversive 0.7.9、Eclipse 3.6.0、および Subversion 1.6 でテスト済みです。

Merge を Subversive のファイル比較ツールおよびマージ ツールとして設定するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • 残念ながら、Subversive はユーザー指定のプログラム引数のリストを適切に分割しないため、compare ユーティリティを直接使用して Merge を起動することはできません。このため、この引数リストを適切に分割するシェル スクリプトを作成する必要があります。

    次の内容を含む新しい /Users/<userid>/bin/subversive-shim.sh シェル スクリプトを作成します。

    #!/bin/sh
    eval "$*"

    メモ:上記のパスはシェル スクリプト ファイル用に推奨される場所です。/Users/<userid> 部分はホーム ディレクトリへの完全なパスです。

  • Subversive でファイル比較に外部ツールを使用するよう設定するため、ユーザーはそのツールの場所とそこに送られる引数のリストを指定します。この引数リストを設定する場合、比較されるファイルの場所を表すために ${mine}${base} および ${theirs} トークンが使用されます。ファイル比較が呼び出されると、引数リストにあるトークンが比較されるファイルのパスに置き換えられます。残念ながら、Subversive は、Eclipse でファイル比較が起動される方法に応じて、パスに置き換えるトークンに一貫性がありません。リモート ファイルを渡すのに、${base} を使用することもあれば、 ${theirs} を使用することもあります。幸い、${base} が使用される場合は、${theirs} に対して置き換えるテキストはないので、${mine} および ${theirs} からのパスを使用して Merge を起動するスクリプトを作成することができます。ただし、これは ${theirs} が空テキストで、${mine} および ${base} のパスが代わりに比較される場合を除きます。

    次の内容を含む /Users/<userid>/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
    

    メモ:上記のパスは osascript ファイル用に推奨される場所です。/Users/<userid> 部分はホーム ディレクトリへの完全なパスです。

  • Eclipse の[Preferences]ウインドウで[TeamSVNDiff Viewer]ページを選択します。
  • Add...]ボタンをクリックします。
  • Extension or mime–type]フィールドで次のように入力します。

    *
  • Diff program arguments]ボックス内の[Program Path]フィールドで、次のように入力します。

    /bin/sh
  • その下にある大きなフィールドで次のように入力します。

    /Users/<userid>/bin/subversive-shim.sh /usr/bin/osascript /Users/<userid>/bin/araxissubversivediff.osa "${mine}" "${theirs}" "${base}"

    メモ:上記のパスで、/Users/<userid>/bin/subversive-shim.sh 部分をご自分のシェル スクリプトへの完全なパスに置き換え、/Users/<userid>/bin/araxissubversivediff.osa 部分をご自分の osascript への完全なパスに置き換えます。

  • Merge program arguments]ボックス内の Program Path フィールドで、次のように入力します。

    /bin/sh
  • その下にある大きなフィールドで次のように入力します。

    /Users/<userid>/bin/subversive-shim.sh /Users/<userid>/bin/compare -wait -merge -a1 -3 -title1:"Common Ancestor" -title2:"Yours" -title3:"Theirs" "${base}" "${mine}" "${theirs}" "${merged}"

    メモ:上記のパスで、/Users/<userid>/bin/subversive-shim.sh 部分をご自分のシェル スクリプトへの完全なパスに置き換え、/Users/<userid>/bin/compare 部分をマシンにインストールした Merge compare コマンドライン ユーティリティへの完全なパスに置き換えます。

  • OK]ボタンをクリックします。
  • Diff Viewer テーブルの新しい設定を確認します。
  • 適用]ボタンをクリックします。

Surround SCM

Seapine このリンクは外部の Web サイトです Surround SCM 2009 は Araxis Merge の組み込みをサポートします。Araxis Merge ファイル比較とマージのデフォルト アプリケーションとして設定するには、次のようにします。

  • Tools]メニューの[User Options...]を選択します。
  • Diff/Merge]タブを選択します。
  • 選択したファイル タイプの設定を編集します。
  • 比較アプリケーション ドロップダウン リストから Araxis Merge を選択します。

詳細については、Seapine ウェブサイト このリンクは外部の Web サイトです を参照してください。

svnX

svnX このリンクは外部の Web サイトです は Subversion クライアントのほとんどの機能のためのオープン ソース GUI です。これは Merge の組み込みをサポートします。

Merge を使用できるように svnX を設定するには:
  • Araxis Merge を svnX 環境設定ウインドウの Diff application として選択します。
  • svnX が Merge と一緒に動作するためのセットアップに関する情報は、svnX オンラインヘルプをお読みください。書き込み時、svnX は araxissvndiff コマンドが特定の場所にインストールされていることを必要とします。(Araxis ウェブサイトからのインストール ページの "Merge コマンドライン ユーティリティのインストール" で araxissvndiff の詳細をご覧ください。)

Versions

Subversion 用の Versions このリンクは外部の Web サイトです クライアントは Araxis Merge を使用するために簡単に設定できます。

Merge を Versions 比較ツールとして設定するには:
  • Versions で 環境設定 ウインドウを開きます。
  • Araxis Mergeファイル比較 ドロップダウン フィールドから選択します。

Xcode

Apple の Xcode このリンクは外部の Web サイトです は Merge を含むサードパーティー ツールを比較を行うために使用できるようにします。

Merge を Xcode 比較ツールとして設定するには:
  • Merge コマンドライン ユーティリティのインストール セクション(Araxis ウェブサイトからのインストール ページ)で説明されているようにコマンドライン ユーティリティがインストールされていることを確認してください。
  • Xcode で 環境設定 ウインドウを開きます。
  • SCM 環境設定ページを選択します。
  • オプションタブを選択します。
  • 比較の方法セクションで、その他...比較表示に使用するツールで設定します。
  • 表示されるファイル選択で、ご自分がインストールした Merge araxisp4diff コマンドユーティリティを探して選択してください。