It mops the floor with Xcode's Subversion support and allows me to do version control operations much faster than I could in the terminal...
If files in branches have been moved or renamed, merging with SVN can quickly get cumbersome. The xMerge ("cross-merge") add-on fixes this shortcoming and assists you in merging moved or renamed files automatically and safely.
The diagram illustrates a common use case: After a branch has been created, a file (green) in trunk is first moved and then modified. Since the branch is a release branch, only the modification should be transferred to the branch, but not the move operation. This gets cumbersome with SVN's default merge, because every moved file has to be merged manually. xMerge on the other hand can identify the moved files in source and target and hence automate the merge.
xMerge works by analyzing the repository's history and identifying files in the merge source and target using SVN's copy-from information.
xMerge is integrated into SmartSVN's merge preview, thus giving you full control over the merge result.
A rather complex scenario, showing the full power of xMerge: We are going to backport a single feature from trunk to a release branch. In the trunk, a directory tmpl has been renamed to templates, which affects many files and should not be merged. Just to add a little more confusion, tmpl/search.html has been renamed to tmpl/search-output.html in the branch.
xMerge identifies the associated files and we simply have to specify the desired resolution: For instance, search-table.html has been copied from search-result.html in the trunk. With the currently selected option, changes of search-table.html (compared to search-result.html) will be transferred to the branch by applying these changes to search-output.html and storing the result as search-table.html. The Files table shows a preview of the result — a clean, minimal backport of our feature.
xMerge is licensed per-company (not per-user), for a fixed price. This means once you have licensed the add-on, all of your licensed SmartSVN users are eligible to use the xMerge functionality. You can also purchase xMerge after having purchased SmartSVN.
To see and test how xMerge can help you, you can request a 31 days evaluation license-key below.
The xMerge add-on requires SmartSVN 6.5.3 or later. If you already have a Professional license, installing xMerge will downgrade SmartSVN to demo mode, hence we recommend using a second, temporary installation of SmartSVN to run the xMerge-trial: On Windows, use the Portable bundle, on other operating systems set smartsvn.home to a new, temporary SmartSVN configuration folder.