The Merge plugin for Visual SourceSafe is included with Merge and enables Merge to access files located within a Visual SourceSafe database. You must also install the Visual SourceSafe client tools on your computer.
The plugin has been tested with Visual SourceSafe v6.0d.
Visual SourceSafe only provides a 32-bit version of its API. Consequently, the Merge plugin for Visual SourceSafe only works with the 32-bit version of Merge and is not supported with the 64-bit version.
What you can do with the plugin
Using the plugin, you can (for example) perform a folder comparison to compare your Visual SourceSafe working directories against the database. Alternatively, you could directly compare different branches (or the same branch at different points in time) within the database.
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 Visual SourceSafe database. To modify files within the database, you will need to use one of the Visual SourceSafe tools to open/edit/submit files.
Preparing Merge to use the plugin
Merge needs credentials to access the Visual SourceSafe servers that you use. Provide these on the Credentials options page. (For anonymous access to a Visual SourceSafe 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, ensure that the Options…▸Application▸Show file versions from SCM systems option is checked.
Using the Visual SourceSafe plugin
To specify a file or project within a Visual SourceSafe database, prefix the path to the file or project with
vss: to form a URI.
A user name, 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.
vss://jrs:*@c:\vss\srcsafe.ini/$/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
c:\vss\srcsafe.ini and a user name
jrs, and the password from that entry is used to make the connection.
||Specifies the most recent version of the project
||Specifies the most recent revision of the file
||Specifies the project
||Specifies revision 5 of the project
||Specifies revision 43 of file
||As above, but connecting to a database whose
||As above, but specifying a password
||As above, but specifying that Merge should use the relevant password from the Credentials options page. This ensures that the password is not shown on the screen or within comparison reports.|
If a user name is specified, a path to the
SRCSAFE.INI file must also be specified.
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 a
vss:// URI to do so.
If the appropriate credentials have been configured on the Credentials options page, Merge will endeavour to populate the Versions button with any older revisions of the file you are comparing.
The Visual SourceSafe API does not provide a way to obtain the sizes of files within the database. Merge assumes a file size of 1 kilobyte for all files in the database.
The Visual SourceSafe API is not very robust. In particular, if two or more folder comparisons attempt concurrently to access the same SourceSafe database, some of the file operations may fail. Failed file comparisons can be re-attempted using the Re-test selected command.