There are two approaches to converting from Visual SourceSafe to Mercurial. I recommend the multi hop approach since it uses more mature tools.

Multi Hop Approach (vss -> svn -> hg)

Follow the directions on the vss2svn page to convert from Visual SourceSafe to Subversion. Then convert the Subversion repository to Mercurial.

Direct Approach (vss -> hg)

WARNING: The vss2svn script has evolved a lot since the vss2hg script forked and is now using the ssphys package to extract data from Visual SourceSafe instead of the ss.exe solution that vss2hg is using (as of 1.03).

Please note that version 1.03 of this script is severely lacking when it comes to non-ascii file names and Visual Source Safe installations with non-us regional settings.. These issues have been fixed in vss2svn.

Attached is the 1.04 version with some fixes for running under Windows and a fix for a SourceSafe directory name length of 1. It has been tested with Windows 2003 server, SourceSafe 2005, and ActivePerl 5.10.1

SourceSafeConversion (last edited 2012-04-17 06:35:08 by ras)