Integrating with Source Control, Configuration Management, and Other Applications

Merge for Windows 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 topic contains instructions for integrating Merge with the following applications:

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.

Other applications

If your chosen application isn’t listed above, you may be able to integrate Merge with it yourself using the Merge .NET assembly, Automation API, or command-line utility. The .NET assembly or Automation API can, in general, enable tighter integration with other applications than the 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.

Android Studio

Android Studio can be configured to use Merge for file and folder comparisons, and also for file merging. The instructions below have been tested with version 2021.3.1 of Android Studio.

To configure Android Studio to use Merge as the file and folder comparison tool:

For Araxis Merge 2022 and earlier, note that Android Studio does not permit different command-line arguments to be configured for invoking an external tool to perform two-way and three-way comparisons. This unfortunately makes it impossible for Android Studio to use the recommended Compare.exe command-line utility included with Merge 2022 and earlier for external comparisons. Instead, Merge.exe must be used for integration. This works, but has the drawback that a fresh instance of Araxis Merge is started for each comparison. From Araxis Merge 2023 onwards, Compare.exe has been modified to accommodate the limitations of Android Studio.

  1. Choose FileSettings….

  2. In the Settings window that appears, select ToolsDiff & MergeExternal Diff Tools from the list on the left-hand side.

  3. Check the Enable external diff tool checkbox.

  4. For Araxis Merge 2023 and later, configure the following:

    Path to executable: C:\Program Files\Araxis\Araxis Merge\Compare.exe
    Parameters: /3 /a3 %1 %2 %3

    For Araxis Merge 2022 and earlier, configure the following:

    Path to executable: C:\Program Files\Araxis\Araxis Merge\Merge.exe
    Parameters: %1 %3 %2

    Replace C:\Program Files\Araxis\Araxis Merge above with the full path of the Araxis Merge installation directory on your machine.

  5. Check the Use by default checkbox.

  6. Click the Test Diff button. An Araxis Merge window should appear with a 2-way comparison. Close the comparison.

  7. Click the Test Three-Side Diff button. An Araxis Merge window should appear with a 3-way comparison. Close the comparison.

To configure the Android Studio to use Merge as the merging tool:
  1. Choose FileSettings….

  2. In the Settings window that appears, select ToolsDiff & MergeExternal Diff Tools from the list on the left-hand side.

  3. Check the Enable external merge tool checkbox and configure the following:

    Path to executable: C:\Program Files\Araxis\Araxis Merge\Compare.exe
    Parameters: /3 /a2 /title1:Theirs /title2:Ancestor /title3:Yours %2 %3 %1 %4

    Replace C:\Program Files\Araxis\Araxis Merge\ above with the full path of the Araxis Merge installation directory on your machine.

  4. Ensure that the Trust process exit code checkbox is unchecked. The exit code from compare does not indicate whether the output file has been updated.

  5. Click the Test Merge button. A Merge window should appear with a 3-way comparison. Close the comparison.

  6. In the Merge In External Tool dialog, click the Mark as Resolved button.

  7. In the Test Complete dialog, click the OK button.

If Araxis Merge is used to make changes to a file that Android Studio has stored in memory, perhaps following a merge operation, Android Studio may ask whether you wish to keep the file it has in memory or update it with the contents of the modified file on disk. It is most likely you will want to load changes from disk following a merging operation.

AccuRev

The AccuRev Windows client can be configured to use Araxis Merge for file comparison and merge operations:

Alienbrain

Certain Avid Alienbrain clients include Merge (see the Alienbrain website for full details). Merge is fully integrated with the Avid Alienbrain clients that include it.

AllChange

Intasoft has selected Merge as the preferred comparison and merging tool for its AllChange configuration management product. By creating a file-system plugin, Intasoft was the first company to take advantage of the tight integration with SCM systems made possible by Merge. This means that Merge is able to browse AllChange repositories directly, providing a way accurately to control and compare baselines within the AllChange environment. The plugin offers hierarchical comparison of baselines, important for product release management and variant management. Further information is available in the AllChange File-System Plugin topic, and from the AllChange/Merge integration page on the Intasoft website.

ClearCase

Several customers have kindly contributed the alternatives below for integrating Merge and ClearCase. Please note that Araxis has not tested these possibilities, and they are provided ‘as is’ in the hope that they may be useful.

To integrate ClearCase with Merge:

CS-RCS

We have been provided with the following instructions for integrating Merge with CS-RCS by a customer:

Dreamweaver

Adobe (Macromedia) Dreamweaver 8 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 8 to use Merge as the file comparison tool:

Eclipse

For Eclipse , see the entry for Subclipse.

FinalBuilder

Araxis Merge can easily be integrated into your FinalBuilder build process. FinalBuilder includes two actions, ‘Araxis Compare Files’ and ‘Araxis Compare Folders’. These enable you to perform file and folder comparisons using Araxis Merge. The actions are configured in the FinalBuilder GUI, and don’t require knowledge of the command-line arguments for Merge. The actions can also be used to alter the flow of the build process, depending on the result of the comparison.

FreeVCS

It has been reported that Merge integrates smoothly into FreeVCS using compare.exe. FreeVCS is widely used in the Delphi community.

To configure FreeVCS to use Merge:

Git for Windows (msysGit)

See Integrating with Git.

Git WSL(Windows Subsystem for Linux)

See Integrating with Git.

Git(Cygwin)

See Integrating with Git.

Git Extensions

Git Extensions , a graphical user interface for Git, is easily configured to use Merge for file comparison and merging operations.

The following steps have been tested with Git Extensions v2.47.3.

To use Araxis Merge for file comparison and file merging:

IBM Rational Synergy

IBM Rational Synergy can be configured to work with Merge.

Ensure that compare.exe is accessible to Synergy by adding C:\Program Files\Araxis\Araxis Merge (or the correct path to your Merge installation directory) to your PATH environment variable.

Edit C:\Program Files\IBM\Rational\Synergy\7.1\etc\ccm.properties file as follows:

replace

windows.tool.compare.ascii = %ccm_compare

with

windows.tool.compare.ascii = compare.exe /max /2 %file1 %file2

and replace

windows.tool.merge.ascii = %ccm_merge

with

windows.tool.merge.ascii = compare.exe /max /wait /3 /a2 %file1 %ancestor %file2 %outfile

Thank you to Herve Burtin for providing the original instructions.

For further information on integrating third-party software tools with Synergy, see the Synergy documentation on the IBM website.

Jalindi Igloo and CVS

Jalindi Igloo is a program that allows you to connect Microsoft Visual Studio and other IDEs directly to a CVS repository. The program is completely free and can be used anyway you like. When used with CVS for source control it enables seamless integration of Merge with the products on the Jalindi Igloo compatibilty page .

JetBrains Aqua, CLion, DataGrip, DataSpell, GoLand, IntelliJ IDEA, MPS, PhpStorm, PyCharm, Rider, RubyMine, and WebStorm

JetBrains Aqua , CLion , DataGrip , DataSpell , GoLand , IntelliJ IDEA , MPS , PhpStorm , PyCharm , Rider , RubyMine , and WebStorm can be configured to use Merge for file and folder comparisons, and also for file merging. The instructions below have been tested with versions 2022.2 and 2022.3 of these JetBrains IDEs.

To configure these JetBrains IDEs to use Merge as the file and folder comparison tool:

For Araxis Merge 2022 and earlier, note that these JetBrains IDEs do not permit different command-line arguments to be configured for invoking an external tool to perform two-way and three-way comparisons. This unfortunately makes it impossible for these IDEs to use the recommended Compare.exe command-line utility included with Merge 2022 and earlier for external comparisons. Instead, Merge.exe must be used for integration. This works, but has the drawback that a fresh instance of Araxis Merge is started for each comparison. From Araxis Merge 2023 onwards, Compare.exe has been modified to accommodate the limitations of these IDEs.

  1. Choose FilePreferences… (JetBrains IDEs 2022.2 and earlier) or FileSettings… (JetBrains IDEs 2022.3 and later).

  2. In the Preferences or Settings window that appears, select ToolsDiff & MergeExternal Diff Tools from the list on the left-hand side.

  3. Check the Enable external tools checkbox.

  4. Under Configure external tools, click the + button.

  5. For Araxis Merge 2022 and earlier, configure the following in the Add An External Tool window:

    Tool group: Diff tool
    Program path: C:\Program Files\Araxis\Araxis Merge\Merge.exe
    Tool name: Araxis Merge
    Argument pattern: %1 %3 %2

    For Araxis Merge 2023 and later, configure the following in the Add An External Tool window:

    Tool group: Diff tool
    Program path: C:\Program Files\Araxis\Araxis Merge\Compare.exe
    Tool name: Araxis Merge
    Argument pattern: /3 /a3 %1 %2 %3

    Replace C:\Program Files\Araxis\Araxis Merge above with the full path of the Araxis Merge installation directory on your machine.

  6. Click the Test Diff button. An Araxis Merge window should appear with a 2-way comparison. Close the comparison.

  7. Click the Test Three-Side Diff button. An Araxis Merge window should appear with a 3-way comparison. Close the comparison.

  8. In the Configure external diff/merge tools associated with a file type table, in the Default row, select Araxis Merge as the diff tool.

To configure these JetBrains IDEs to use Merge as the merging tool:
  1. Choose FilePreferences… (JetBrains IDEs 2022.2 and earlier) or FileSettings… (JetBrains IDEs 2022.3 and later).

  2. In the Preferences or Settings window that appears, select ToolsDiff & MergeExternal Diff Tools from the list on the left-hand side.

  3. Check the Enable external tools checkbox.

  4. Under Configure external tools, click the + button.

  5. In the Add An External Tool window, configure the following:

    Tool group: Merge tool
    Program path: C:\Program Files\Araxis\Araxis Merge\Compare.exe
    Tool name: Araxis Merge
    Argument pattern: /3 /a2 /title1:Theirs /title2:Ancestor /title3:Yours %2 %3 %1 %4

    Replace C:\Program Files\Araxis\Araxis Merge\ above with the full path of the Araxis Merge installation directory on your machine.

  6. Ensure that the Trust process exit code checkbox is unchecked. The exit code from compare does not indicate the output file has been updated.

  7. Click the Test Merge button. A Merge window should appear with a 3-way comparison. Close the comparison.

  8. In the Merge In External Tool dialog, click the Mark as Resolved button.

  9. In the Test Complete dialog, click the OK button.

  10. In the Add An External Tool window, click the OK button.

  11. In the Configure external diff/merge tools associated with a file type: table, in the Default row, select Araxis Merge as the merge tool.

If Araxis Merge is used to make changes to a file that a JetBrains IDE has stored in memory, perhaps following a merge operation, a JetBrains IDE may ask whether you wish to keep the file it has in memory or update it with the contents of the modified file on disk. It is most likely you will want to load changes from disk following a merging operation.

Mercurial

Merge integrates tightly with Mercurial . Araxis provides a Mercurial File-System Plugin to enable Merge to access files in Mercurial depots directly. Merge is also able to populate the Versions button drop-down versions menu with other revisions of each file being compared. For more information, see Comparing Text Files (or Typed/Pasted Text).

Mercurial can also be configured to use Merge for file/folder comparison and file merge operations. The comparison integration uses the Extdiff extension , which is supplied with Mercurial.

The following integration instructions have been tested with Mercurial v4.2.1.

To configure Mercurial to use Araxis Merge for file merging:
To configure Mercurial to use Araxis Merge for file comparison:
Examples of using hg arxdiff:

Mercurial WSL (Windows Subsystem for Linux)

As of version 2017.4929, Merge can be integrated with Mercurial running under the Windows Subsystem for Linux (WSL).

The use of Merge 2020 or later is strongly recommended as its WSL integration is considerably enhanced and uses \\wsl$-style paths with Windows 10 May 2019 Update (1903) onwards. Merge 2020 supports both WSL 1 and WSL 2.

Merge 2020 or later with Windows 10 May 2019 Update (1903) onwards

When using both Merge 2020 or later and Windows 10 1903 onwards, the Merge-WSL integration uses \\wsl$-style paths. This enables Merge to access WSL files, facilitating a much more straightforward integration than is possible with earlier versions of Merge or Windows.

To configure Mercurial to use Araxis Merge for file merging and file comparison:

Merge 2017–2019 or Windows 10 October 2018 (1809) or earlier

When using these older versions of Merge or Windows, Merge-WSL integration requires the repositories and files being accessed by Merge to be stored on the Windows file system (e.g. under /mnt/c, from the perspective of WSL). Please read the following warning carefully to understand the reason for this limitation.

CRITICALLY IMPORTANT: Under no circumstance should you directly create and/or modify Linux files using Windows applications such as Araxis Merge. Due to the design of WSL, breaking this rule will likely result in loss of data and/or damage to your Linux environment. With older versions of Merge (pre-2020) or Windows (pre-Windows 10 1903), the integration of Merge with Git and Mercurial running under WSL therefore requires that you store repositories and files to be used from both Windows and WSL on the Windows file system (e.g. under /mnt/c, from the perspective of WSL). For more information, please see Do not change Linux files using Windows apps and tools .

The integration instructions in this section endeavour to adhere to the above restriction, but there may nevertheless be certain cases not taken into account. When saving or copying any file or folder using Merge, you are therefore advised to verify that the file or folder is not being written to the WSL file area under %localappdata%\lxss\.

To configure Mercurial to use Araxis Merge for file merging and file comparison:

Mercurial (Cygwin)

It has been reported that Mercurial will work within Cygwin . The following configuration has not been tested but is expected to work. Please see the previous entry for examples of using a configuration such as this.

To configure Mercurial to use Araxis Merge for file merging:
To configure Mercurial to use Araxis Merge for file comparison:

Perforce

Merge integrates tightly with Perforce .

If you have Perforce’s P4EXP installed, you can perform various Perforce actions (including Submit and Open for Edit) directly from within Merge. To do this, right-click a file or folder comparison and choose ExplorerPerforce from the context menu that appears.

To browse Perforce repositories directly from Merge (deprecated):
To configure P4Win (2000.1 release or later) to use Merge for file comparison and merging:
To configure P4V (2007.2 release or later) to use Merge for file comparison and merging:
To configure the Perforce command-line tool (p4.exe) to use Merge:

Serena Dimensions CM

Merge is now bundled with Serena Dimensions CM 14 and later. Please contact Serena if you require assistance using Merge with Dimensions CM.

SmartGit/Hg

SmartGit/Hg can be configured to use Araxis Merge for file comparison and merge operations.

To configure SmartGit/Hg to use Araxis Merge for file comparison:
To configure SmartGit/Hg to use Araxis Merge for file merging:

SmartSVN/SmartCVS

SmartSVN and SmartCVS clients can be configured to use Araxis Merge for file comparison and merge operations.

To configure SmartSVN/SmartCVS to use Araxis Merge for file comparison:
To configure SmartSVN/SmartCVS to use Araxis Merge for file merging:

Source Integrity Enterprise Edition

MKS Source Integrity Enterprise Edition (SIEE) has the ability to integrate with Merge and MKS have kindly provided the instructions here. You need to set a variable in the client’s IntegrityClientSite.rc file called vdiffCommand that points to Merge. An example line would look like the following (all on one line, regardless of the formatting below as shown in your browser):

vdiffCommand=C:/PROGRA~1/Araxis/ARAXIS~1/compare /a2 /title1:\"{1}\" /title2:\"{2}\" \"{3}\" \"{4}\"

Merge makes use of the title inputs from SIEE, using /title1 and /title2 flags. It is also necessary to use quotes around the inputs, and it is necessary to escape them with backslashes (\). Note that the title inputs from SIEE do not need to be defined, but are useful since without them, the comparison windows of Merge will only show the file name itself (c:\temp\F2EB.tmp vs revision 1.2).

With the vdiffCommand variable in place, Merge integrates almost seamlessly into SIEE’s interface.

Source Integrity Standard Edition

MKS Source Integrity Standard Edition (SISE) version 7.5+ for Windows has the ability to integrate with Merge and MKS have kindly provided the instructions here. SISE makes use of Windows environment variables and can pass this information to Merge. The following is a script (araxis.cmd) which can be added to the SISE’s toolbar as a shortcut, and will compare revisions depending on the window you are in (Project or Archive) and what revisions you have selected. The script locates the appropriate revisions and checks them out into a temporary location, and passes the PATHS and other variables to the Merge compare.exe utility.

REM Setup temporary file names
set FILE1="c:\temp\revision1"
set FILE2="c:\temp\revision2"

REM Checkout the two revisions to the temporary files
co -p%MKSSI_REVISION1% %MKSSI_FILE% > %FILE1%
co -p%MKSSI_REVISION2% %MKSSI_FILE% > %FILE2%

REM Substitute the path to compare.exe below with the
REM appropriate Merge installation directory on
REM your machine (use the short form of the path
C:/PROGRA~1/Araxis/ARAXIS~1/compare.exe /a2 /title1:"Revision %MKSSI_REVISION1%" /title2:"Revision %MKSSI_REVISION2%" %FILE1% %FILE2%

SourceAnyWhere

We have preliminary instructions for integrating DynamSoft SourceAnyWhere 4.2.4 with Merge, and would appreciate feedback on these from SourceAnyWhere users, particularly with respect to the merging settings.

To integrate DynamSoft SourceAnyWhere with Merge:

SourceGear Vault

The following configuration steps were received from a customer and verified by Araxis for the Windows SourceGear Vault client v4.1.4.

To configure SourceGear Vault client to use Merge for file comparison and merging:

SourceOffSite

For version 2.0 of SourceOffSite , choose the Options… item from the Tools menu, and fill in the fully-qualified path to compare.exe in the Application for comparing files field on the first page (General). We are told by SourceGear that SourceOffSite 3.5.1 should also work well with Merge. The follow caveats apply to version 3.0 and may also apply to other versions:

Support for SourceOffSite is available from the SourceGear website .

StarTeam

StarTeam has the ability to integrate with Merge.

To configure StarTeam to use Merge:

This works because:

Each time that StarTeam needs to call Merge, it replaces the terms that start with $ with actual paths to those files and asks the operating system to execute the completed command.

Subclipse

Subclipse is an Eclipse plug-in providing support for Subversion within the Eclipse IDE. It can be configured to use Merge as its merging tool. Merge will then be used whenever you choose Edit Conflicts from a Team menu in Eclipse.

Merge can also integrate directly with Subversion. Please see Subversion section for more information.

The following steps have been tested with Subclipse 1.6.13, Eclipse 3.6.0 and Subversion 1.6.

To configure Merge as the Subclipse merging tool:

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. Merge is also able to populate the Versions button drop-down versions menu with other revisions of each file being compared. For more information, see Comparing Text Files (or Typed/Pasted Text).

See also the entries for Subversive, Subclipse and TortoiseSVN.

To browse Subversion repositories directly from Merge:
To configure the Subversion command-line tool (svn) to use Merge:

Subversive

Subversive is the official Eclipse plugin providing support for Subversion within the Eclipse IDE. It can be configured to use Merge as its merging tool. Merge will then be used for file comparisons, and for merging whenever you choose Edit Conflicts from a Team menu in Eclipse.

Merge can also integrate directly with Subversion. Please see Subversion section for more information.

The following steps have been tested with Subversive 0.7.9, Eclipse 3.6.0 and Subversion 1.6.

To configure Merge as the Subversive file comparison and merging tool:

Surround SCM

Surround SCM has built-in support for Araxis Merge.

To set Araxis Merge as the default application for comparison and merging:

Please see the Surround SCM website for more details.

Team Foundation

See the entry for Visual Studio Team Foundation.

The Operations Pack (TOP) for HP NonStop

comForte states that its TOP software now provides built-in support for comparing and merging files on NonStop servers using Araxis Merge.

To configure Araxis Merge as the tool to perform comparison/merging within TOP:
To use Araxis Merge from within TOP:

TortoiseGit

The Diff Viewer and Merge Tool pages of the TortoiseGit  Settings window enable external diff and merging programs to be configured.

Merge can also integrate directly with Git. Araxis provides a Git File-System Plugin to enable Merge to access files in Git repositories directly. Merge is also able to populate the Versions button drop-down versions menu with other revisions of each file being compared. For more information, see Comparing Text Files (or Typed/Pasted Text).

The following steps have been tested with Git for Windows v1.8.4 in combination with TortoiseGit v1.8.6.0.

To configure Merge as the Diff Viewer:
To configure Merge as the Merge Tool:

TortoiseHg

TortoiseHg has direct support for Araxis Merge 2010.3829 and later. If TortoiseHg finds Araxis Merge on a computer (via a registry key search), it will use Araxis Merge as the default diff and merge tool without any further configuration.

If you are using an older version of Araxis Merge, TortoiseHg will not find Araxis Merge automatically. In this case, add the following line to your user Mercurial.ini:

[merge-tools]
araxis.executable=${ProgramFiles}/Araxis/Araxis Merge/ConsoleCompare.exe

TortoiseSVN

The External Programs section of the TortoiseSVN  Settings window enables external diff and merging programs to be configured.

Merge can also integrate directly with Subversion. Please see Subversion for more information.

To configure Merge as the Diff Viewer:
To configure Merge as the Merge Tool:

TrackWare

Certain GlobalWare TrackWare clients include Merge (see the GlobalWare website for full details). Merge is fully integrated with the TrackWare clients that include it.

Veracity

Veracity is an Open Source, distributed version control and bug tracking system for Windows, macOS, and Linux. SourceGear, the company behind Veracity, has helpfully provided the information here.

Veracity supports Araxis Merge out of the box for both diff and merge operations. Simply use --tool araxis with any command that supports external comparison or merging tools. Alternatively, you can configure Merge as your default tool for various operations as described below.

For support using Veracity with Araxis Merge, please see http://veracity-scm.com/qa .

To make Araxis Merge the default interactive comparison tool for text files:
vv config set filetoolbindings/diff/:text/gui araxis
To make Araxis Merge the default interactive comparison tool for binary files:
vv config set filetoolbindings/diff/:binary/gui araxis
To make Araxis Merge the default interactive merging tool for text files:
vv config set filetoolbindings/merge/:text/resolve araxis
To make Araxis Merge the default interactive merging tool for binary files:
vv config set filetoolbindings/merge/:binary/resolve araxis

Visual Studio Team Foundation

Team Foundation integrates with Araxis Merge for both file comparison and merging.

The arguments for merging are taken from James Manning’s Blog . Yonatan Leonov has also written about using Merge with Team Foundation , with a particular emphasis on Merge Standard.

To configure Merge as the Team Foundation difference tool:
To configure Merge Professional as the Team Foundation merging tool:
To configure Merge Standard as the Team Foundation merging tool:

WinCvs

The WinCvs client can be configured to use Araxis Merge for file comparisons. The following steps have been tested using WinCvs 2.1.1.

To configure WinCvs to use Araxis Merge for file comparison: