The Merge plugin for Subversion enables Merge to access files located within a Subversion repository. It is included as a standard part of the Merge installation.
What you can do with the plugin
Using the plugin, you can (for example) perform a folder comparison to compare the Subversion repository against your local workspace. Alternatively, you could directly compare different branches (or the same branch at different points in time or at different revisions) within the repository. You could then launch file comparisons for any pairs of modified files that were of interest. This approach can work well for performing code reviews.
The plugin also enables Merge to populate the Versions button drop-down versions menu appropriately. For more information, see Comparing Text Files (or Typed/Pasted Text).
The plugin provides read-only access to the Subversion repository. To modify files within the repository, you will need to use one of the Subversion tools to open/edit/submit files.
Preparing Merge to use the plugin
Merge needs to know the path to the
svn executable on your machine. This can be configured on the Application▸SCM preference page. It is recommended that you use the Subversion executable provided with macOS. This is usually
Merge also needs credentials to access the Subversion servers that you use. Provide these on the Credentials preference page. (For anonymous access to a Subversion server, add an entry for the server to the Credentials page with a blank User name and Password.)
Finally, if you wish Merge to populate the Versions button drop-down versions menu with any other revisions of the files or folders you are comparing, check the Include versions from SCM systems checkbox on the the Versions preference page.
Using the Subversion plugin
To specify a file or folder within a Subversion repository, prefix the path to the repository file or folder with
svn://server/ to form a URI.
A username, password, and port number can be included in the URI, as shown in the examples below.
It is possible to use * as a password placeholder (e.g.
svn://jrs:*@svn.example.com:3691/notepad/notepad.cpp). This prevents passwords appearing visibly on the screen. In this case, the server list is checked for an entry containing a server svn.example.com and a username jrs, and the password from that entry is used to make the connection.
Repository access using the Subversion
file protocols is supported. Prefix repository paths with
svnfile:, respectively, to specify the desired protocol.
||Specifies the most recent version of the folder
||Specifies the most recent revision of the file
||As above, but using the Subversion
||Specifies the folder
||Specifies the folder
||Specifies revision 43 of file
||Specifies the file
||As above, but specifying that Merge should use the relevant password from the Credentials preference page. This ensures that the password is not shown on the screen or within comparison reports.|
Accessing files and folders already in your client workspace
If files or folders are already synced in your client workspace, you access them as you would any other file or folder on your hard disk. You do not need to use an
svn:// URI to do so.
If the appropriate credentials have been configured on the Credentials preference page, Merge will endeavour to populate the Versions button with any older revisions of the file you are comparing.
Integrating Merge with the Subversion command-line tools and graphical front-ends
Merge itself integrates well with Subversion. For more information, see Integrating with Source Control, Configuration Management and Other Applications.