views:

2825

answers:

11

I'm a single developer looking to get off of Visual Source Safe and move to svn.

A quick search brings up several tools, but I don't see a clear winner and I can't afford to spend a lot of time testing different tools.

Has anyone done this successfully, and can recommend a method?

+22  A: 

I recommend just adding your code to a new Subversion repository rather than importing from VSS. VSS has a convoluted version control model that doesn't translate well to many other systems, and just starting fresh is usually the best way to avoid taking that clutter with you.

If you need to keep the history around, make your VSS repository read-only.

Jon Galloway
Make sure you clear away whatever crufty files VSS leaves in your checkout before importing into SVN, and also make sure all the generated files are gone as well.
jodonnell
I don't agree with this at all. My company has been using VSS for almost 10 years and there would be tons of history missing if we just "started fresh."I do agree that VSS is garbage but it's better than nothing and just throwing out years of file history is a big mistake.
Outlaw Programmer
Just freeze the stuff in VSS for future reference (i.e. Read Only) (which you will almost certainly never look at!) and start afresh with Subversion.
Mitch Wheat
We moved our projects one at the time. First disconnected them from Sourcesafe. Then deleted all the Sourcesafe "helper" files. And then imported them in SVN. We left the VSS server alive for history and for old projects which aren't going to SVN.
pirho
A: 

I have used some script (I can't remember which one) to assist in a VSS to SVN conversion. It was a bit painful and finicky but ended up working, and kept all history. I had to keep all the history for political reasons at the time; if I had my way I probably would have thrown away the history and imported all the code into SVN.

Also for political reasons, I wrote some really hacky scripts that kept VSS updated with changes from Subversion. These worked for a while but kept breaking every week or two, until somebody renamed a directory or something and the whole thing fell apart. By that time it was okay to simply continue using Subversion.

Greg Hewgill
+1  A: 

At my current job we just created a subversion repository, setup hook scripts to ignore all vss and generated files, and then just started importing the various projects with tortoiseSVN. Worked out pretty decent, we were up and running within a couple of hours.

Ethan Gunderson
+6  A: 

We did this migration recently at work. I strongly suggest:

  1. Just add the new code from VSS, take the hit that pre-svn history will have to stay in the old VSS repository.
  2. If your VSS repository is still in use after the initial code dump, migrate changes using Vendor Branches. Ie, assume your VSS repository is a vendor and use dated tags to merge the changes into the SVN repository.

Slightly more detail here.

Jim T
+1  A: 

The following tool works quite well: http://www.pumacode.org/projects/vss2svn/wiki/RunningTheMigration

It takes a bit of work to clean up the imported repository, but if you really want to keep your history it could be worth it.

Hakuna
A: 

I totally agree with Jon Galloway's answer. I have also tried using vss2svn but found that there were a lot of problems with the imported repository and in the end decided that it was not worth the effort required to clean it up. We just imported a copy of the code into subversion and have gone back to VSS on the rare occasion that an older version of the code needed to be consulted.

In my previous company we also used the same approach for migrating from ClearCase to Subversion, and I can't remember any occasion that we ever needed to go back into ClearCase to look at the history.

The biggest issue was getting everyone to switch to the new repository at the same time, but as a single developer you shouldn't have any problem there!

Caroline Orr
A: 

We downloaded and tested several migration tools and I would recommend Polarion SVNImporter.

We used it to carry a selective migration of almost a Gb from a VSS6 repository to Subversion. As the source code is available, we were able to patch it and tailor to our specific needs (linked files detection).

antispam
+4  A: 

The CodePlex Version of VSStoSVN is one of the best I've found. I had pretty bad results with the PumaCode version, but this one ran smooth.

http://vss2svn.codeplex.com/

JoelHess
A: 

http://vss2svn.codeplex.com/ Does not download anything even it says so.

whatname
A: 

I have used vss2svn with great success.

Bruce Grissom
A: 

My company has developed a Source Safe to Subversion migration tool: http://www.abstrakti.com/en-US/Products/Krepost

This tool was developed after having problems with every other tool, when we had to migrate a customer's repository.

Let me know if you have any problems, I'll be glad to help you.

Eric.

Eric Schneider