Merge for Mac OS X integrates with most version control (VC), software configuration management (SCM) and other applications that allow a third-party file comparison (diff) or file merging tool to be specified. This page contains instructions for integrating Merge with the following applications:
If your chosen application isn’t listed on this page, you might find the information for integrating Merge for Windows with other applications to be a helpful starting point. You might also be able to integrate Merge with another application yourself, using the Merge AppleScript API or command-line utility.
If you have instructions for integrating Merge with other systems, or corrections to the information presented below, please contact us to let us know so that we can update this list.
Integration with many SCM systems requires the Professional Edition of Merge to enable the comparison of two modified versions
of a file with their common ancestor.
AccuRev
The AccuRev
Mac OS X client can be configured to use Araxis Merge for file comparison and merge operations:
-
Choose Preferences... from the Tools menu.
-
Select the Diff/Merge tab.
-
In the Diff entry field, enter the following:
"/usr/local/bin/compare" -wait -2 %1% %2%
Note: in the above path, replace /usr/local/bin/ with the location of the full path to the Araxis Merge compare utility on your machine.
-
In the Merge entry field, enter the following:
"/usr/local/bin/compare" -wait -a3 -3 %1% %2% %a% %o%
Note: in the above path, replace /usr/local/bin/ with the location of the full path to the Araxis Merge compare utility on your machine.
-
Dismiss the Preferences dialog.
Dreamweaver
Adobe (Macromedia) Dreamweaver
CS3 integrates with Araxis Merge and can launch a two-way file comparison. Consequently, the Standard Edition of Merge is sufficient if you will be using it only with Dreamweaver.
To configure Dreamweaver CS3 to use Merge as the file comparison tool:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Choose Dreamweaver > Preferences....
-
Select the File Compare category.
-
Click the Browse... button to bring up the Select External Editor dialog.
-
Locate and select the Merge compare command-line utility from the folder in which you have installed it.
-
Click the Open button. The full path to the Merge compare command-line utility should now be shown in the Choose application to compare files entry field.
-
Click OK to dismiss the Preferences dialog.
Eclipse
For Eclipse
, see the entry for Subclipse.
Git
Git
can be configured to use Merge for file comparison and merge operations. The following configuration steps are known to work
for Git v1.6.1.
To use Araxis Merge for file comparison:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Update the Git configuration files
by adding the following diff tool configuration:
[diff] external = /Users/<userid>/bin/araxisgitdiff renames = true
Note: in the above path, replace /Users/<userid>/bin/araxisgitdiff with the full path to the Merge araxisgitdiff command-line utility that you have installed on your machine.
To use Araxis Merge for file merging:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Update the Git configuration files
by adding the following merge tool configuration:
[mergetool "araxismergetool"] cmd = /Users/<userid>/bin/araxisgitmerge "$PWD/$REMOTE" "$PWD/$BASE" "$PWD/$LOCAL" "$PWD/$MERGED" trustExitCode = false [mergetool] keepBackup = false [merge] tool = araxismergetool
Note: in the above path, replace /Users/<userid>/bin/araxisgitmerge with the full path to the Merge araxisgitmerge command-line utility that you have installed on your machine.
Interface Builder
Apple’s Interface Builder
has a menu option Write Class Files... that will generate source files for the classes you create in the Inspector. Interface Builder will ask you whether you wish to replace or merge the newly generated class files with those that already
exist in the project. If you choose to merge it will open the files with FileMerge (invoked via the opendiff command). However, it is possible to use Araxis Merge in place of FileMerge.
To configure Merge as the Interface Builder comparison tool:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
From a Terminal window, perform the following commands:
cd /Developer/usr/bin sudo mv opendiff opendiff-old sudo ln -s /Users/<userid>/bin/araxisopendiff opendiff
Note: in the above path, replace /Users/<userid>/bin/araxisopendiff with the full path to the Merge araxisopendiff command-line utility that you have installed on your machine.
Note: if other people use your machine, ensure that they have permission to access the araxisopendiff command.
Please note that this change will also affect any other application (including Xcode) that endeavours to run the opendiff command.
Mercurial
Mercurial
can be configured to use Merge for file comparison and merge operations. The following configuration steps are known to work
for Mercurial v1.1.1.
To use Araxis Merge for file comparison:
-
Mercurial is provided with the Extdiff extension
, which enables users to perform external diffs. The following steps will create a new hgsub-commandarxdiffthat can be used to open diffs in Araxis Merge. An example of using such a command might be:hg arxdiff -r1 -r2 myfile.c
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Update the Mercurial configuration files
by adding the following external diff tool configuration:
[extensions] hgext.extdiff = [extdiff] cmd.arxdiff = /Users/<userid>/bin/compare opts.arxdiff = -2
Note: in the above path, replace /Users/<userid>/bin/compare with the full path to the Merge compare command-line utility that you have installed on your machine.
To use Araxis Merge for file merging:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Update the Mercurial configuration files
by adding the following merge tool configuration:
[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
Note: in the above path, replace /Users/<userid>/bin/araxishgmerge with the full path to the Merge araxishgmerge command-line utility that you have installed on your machine.
Perforce
Merge integrates tightly with Perforce
. Araxis provides a Perforce File System Plugin to enable Merge to browse Perforce depots directly. This means that, for example, you can compare branches of source code
directly within a depot without syncing them to the client workspace.
To browse Perforce repositories directly from Merge:
-
See the instructions on the Perforce File System Plugin page.
To configure P4V (2007.2 release or later) to use Merge for file comparison and merging:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Choose Preferences... from the P4V menu.
-
Select the Diff tab.
-
Select the Other application radio button (or Use external application in older versions of P4V).
-
For the Location field, click the Browse button for the user supplied diff application, and select the file araxisp4diff from the folder in which you have installed it.
-
Ensure that the Arguments field reads %1 %2. This step can be ignored for older versions of P4V, which do not have this field.
-
Select the Merge tab.
-
Select the Other application radio button (or Use external application in older versions of P4V).
-
For the Location field, click the Browse button and select the file araxisp4winmrg from the folder in which you have installed it.
-
Ensure that the Arguments field reads %b %1 %2 %r. This step can be ignored for older versions of P4V, which do not have this field.
-
Click the OK button to dismiss the Preferences dialog.
-
P4V should now open Merge for its comparison and interactive merging operations.
To configure the Perforce command-line tool (p4) to use Merge:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Set the
P4DIFFenvironment variable to the full path of the araxisp4diff utility. Also, set theP4MERGEenvironment variable to the full path to araxisp4winmrg.For example, if you have placed the Merge command-line utilities in ~/bin, you might add the following to your .bash_profile:
export P4DIFF=$HOME/bin/araxisp4diff
export P4MERGE=$HOME/bin/araxisp4winmrg -
When you open a new command shell, Merge should now be invoked as appropriate by the Perforce command-line tools. For example,
p4 diff -twill open up a two-way comparison for each of the files that you have opened for edit (including any binary or image files) in your default changelist.
SmartSVN/SmartCVS
SmartSVN
and SmartCVS
clients can be configured to use Araxis Merge for file comparison and merge operations.
Note that the ability to use an external tool for solving conflicts is not available
in the Foundation version of SmartCVS.
To configure SmartSVN/SmartCVS to use Araxis Merge for file comparison:
-
Choose Preferences... from the SmartSVN or SmartCVS menu.
-
Select File Compare in the tree on the left (File Comparators in SmartCVS).
-
Select the * pattern in the table and click the Edit... button.
-
Select the External Comparator radio button.
-
In the Command entry field, enter the following:
/usr/local/bin/compare
Note: in the above path, replace /usr/local/bin/ with the location of the full path to the Araxis Merge compare utility on your machine.
-
In the Arguments entry field, enter the following:
-wait -2 "${leftFile}" "${rightFile} -
Click OK to apply the changes and exit the Edit dialog.
To configure SmartSVN/SmartCVS to use Araxis Merge for file merging:
-
Choose Preferences... from the SmartSVN or SmartCVS menu.
-
Select Conflict Solver under Actions in the tree on the left.
-
Select the External Conflict Solver radio button.
-
In the Command entry field, enter the following:
/usr/local/bin/compare
Note: in the above path, replace /usr/local/bin/ with the location of the full path to the Araxis Merge compare utility on your machine.
-
In the Arguments entry field, enter the following:
-3 -wait -a3 "${leftFile}" "${rightFile}" "${baseFile}" "${mergedFile}"Note: The
"${baseFile}"template is not required when using SmartCVS. -
Click OK to apply the changes and exit the Preferences dialog.
Subclipse
Subclipse
, an Eclipse plugin providing support for Subversion within the Eclipse IDE, can be configured to use Merge as its merging tool. Once that has been done, Merge will be used whenever you choose Edit Conflicts from a Team menu in Eclipse.
Merge can also integrate directly with Subversion. Please see Subversion for more information.
To configure Merge as the Subclipse file merging tool:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
In the Eclipse Preferences window, select the Team > SVN > Diff/Merge page.
-
Select the External radio button.
-
In the adjacent entry field, enter the following:
/Users/<userid>/bin/compare
Note: in the above path, replace /Users/<userid>/bin/compare with the full path to the Merge Merge compare command-line utility that you have installed on your machine.
-
In the Parameters field, enter the following:
-a2 -max -wait -3 -title1:"Theirs" -title2:"Common Ancestor" -title3:"Yours" "${theirs}" "${base}" "${yours}" "${merged}"
Subversion
Merge integrates well with Subversion
. Araxis provides a Subversion File System Plugin to enable Merge to browse Subversion depots directly. This means that, for example, you can compare branches of source code
directly within a depot without syncing them to the client workspace.
See also the entries for svnX and Subclipse.
To browse Subversion repositories directly from Merge:
-
See the instructions on the Subversion File System Plugin page.
To configure the Subversion command-line tool (svn) to use Merge:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Open your ‘SVN configuration area’ configuration file in a text editor. The default location for this file is ~/.subversion.
-
Uncomment the line that specifies the
diff-cmdand set its value to the path of the Merge araxissvndiff executable that you have installed on your machine:diff-cmd = /Users/<userid>/bin/araxissvndiff
Note: in the above path, replace /Users/<userid>/bin/araxissvndiff with the full path to the Merge Merge araxissvndiff command-line utility that you have installed on your machine.
-
Also uncomment the line that specifies the
diff-cmd3and set its value to the path of the Merge araxissvndiff3 executable that you have installed on your machine:diff3-cmd = /Users/<userid>/bin/araxissvndiff3
Note: in the above path, replace /Users/<userid>/bin/araxissvndiff3 with the full path to the Merge Merge araxissvndiff3 command-line utility that you have installed on your machine.
-
Save the modified configuration file and exit the text editor.
-
Merge will now be launched when performing Subversion commands (e.g.
svn diffandsvn merge) that require a two or three-way comparison.
Surround SCM
Seapine
Surround SCM 2009 has built-in support for Araxis Merge. To set Araxis Merge as the default application for file comparison
and merging:
-
Choose User Options... from the Tools menu.
-
Select the Diff/Merge tab.
-
Edit the settings for a selected file type.
-
Select Araxis Merge from the comparison application drop-down list.
Please see the Seapine website
for more details.
svnX
svnX
is an open source GUI for most features of the Subversion client. It has built-in support for Merge.
To configure svnX to use Merge:
-
Choose Araxis Merge as the Diff application in the svnX Preferences window.
-
Please be sure to read the svnX online help for information about setting-up svnX to work with Merge. At the time of writing, svnX requires the araxissvndiff command to be installed in a particular location. (See ‘Installing the Merge command-line utilities’ on the Installing from the Araxis Website page for more information about araxissvndiff.)
Versions
The Versions
client for Subversion can be easily configured to use Araxis Merge.
To configure Merge as the Versions comparison tool:
-
Open the Preferences window within Versions.
-
Choose Araxis Merge from the File Comparison drop-down field.
Xcode
Apple’s Xcode
enables third-party tools, including Merge, to be used for performing comparisons.
To configure Merge as the Xcode comparison tool:
-
Ensure that the command-line utilities have been installed as described in the Installing the Merge command-line utilities section of the Installing from the Araxis Website page.
-
Open the Preferences window within Xcode.
-
Select the SCM preferences page.
-
Select the Options tab.
-
In the Comparison Handling section, select Other... for the View comparisons using setting.
-
From the file chooser that appears, locate and select the araxisp4diff Merge command-utility from the location in which you installed it.
| Related topics |
|---|
