As of 2016-01-20 Project: Merge is officially a discontinued product
and we are therefore no longer selling new licences.

Existing licences and installations of Project: Merge will continue to work,
and most of this website will continue to exist.

We do, however, have a new website at osocorporation.com where you can find information
about the successor to Project: Merge, Oso XML Merge.

All accounts for this website have been migrated over to the new site, and you should be able to
view and edit your existing licences as before - as well as upgrade them to Oso XML Merge licences.

Contents
3 - Command Line Parameters
4 - Integrating with P4V
5 - Tutorials
P4V allows third party tools to integrate to provide comparison and non-automated merge operations for complex file types. This page details how to integrate Project: Merge to provide comparison and merge services for Visual Studio project files. The steps here though can be adapted for any type of XML file.

The P4V Edit menu showing the Preferences option at the bottom. First you should launch P4V, and open the Preferences Dialog. This is done by selecting the Preferences... option on the bottom of the Edit menu as shown in the image to the right.

First we'll set up Project: Merge to compare files. Click on the Diff tab at the top of the Preferences Dialog and then on the Add button below to open the Add File Type dialog: The P4V Add File Type Dialog showing the settings for Project: Merge filled in. Fill in the information for the new file type as detailed below:
Extension
.vcproj - This is the file extension for pre-2010 Visual Studio project files.
Application
Browse to the Project: Merge application folder and select the Project: Merge executable. This will be located under either Program Files or Program Files (x86) depending on whether you are using a 32-bit or 64-bit version of Windows.
Arguments
-compare -left %1 -right %2 - These are the command line options instructing Project: Merge to compare the two files specified by Perforce.

When you have filled out the above details, click the Save button to save the changes in Perforce. Perforce should now invoke Project: Merge when you attempt to compare two Visual Studio project files.


Now we'll set up Perforce to use Project: Merge when merging files. Perforce always performs three-way merges with a common base file and two changed files that are combined into a single result file.

In the P4V Preferences Dialog, click on the Merge tab and then on the Add button as before to open the Add New Type dialog: The P4V Add File Type Dialog showing the settings for Project: Merge filled in. And once again, fill out the information for the new file type as below:
Extension
.vcproj - This is the file extension for pre-2010 Visual Studio project files.
Application
Browse to the Project: Merge application folder and select the Project: Merge executable. This will be located under either Program Files or Program Files (x86) depending on whether you are using a 32-bit or 64-bit version of Windows.
Arguments
-merge -base %b -left %1 -right %2 -result %r - These are the command line options instructing Project: Merge to merge the three input files specified by P4V into a single output file which P4V will read back once the merge is complete.
When you have filled out the above details, click the Save button to save the changes in Perforce. Perforce should now invoke Project: Merge when you attempt to resolve conflicted Visual Studio project files.


You can add any other XML file associates for Project: Merge in exactly the same way. The difference from the steps above is the file extension of the files you wish to associate with Project: Merge. For example, you can use Project: Merge to compare and merge Visual Studio Property Sheets by replacing the .vcproj file extension with .vsprops.