views:

111

answers:

2

OK, so I have started a contract where they are using (gulp) Visual SourceSafe and are looking to move to something better. I have recommended Git. I stumbled across vss2git, which looks useful for migrating from VSS. Has anyone used it?

Many thanks!

+1  A: 

Well there are not many commits, and the project description says it was developed initially for the creator's company, so it probably hasn't had a lot of widespread use.

Having said that, it would be worth giving it a trial run on a copy of your VSS database. If it works then great, if not then maybe you can work on the code a bit or contact the author for help/suggestions.

Mike Weller
OK, good points, thanks. I'm *hoping* to convince them that their version history isn't worth bothering with, but, since that probably won't work, then finding a way to migrate the history will be important - the last thing I want is to have VSS hanging around.
Radicalise
A: 

Hi, I'm the author of vss2git. If your version history doesn't involve lots of actions unique to VSS, like shares and archives, your repository should migrate without problems. I've made a number of fixes in those areas based on feedback from other users, so there's a reasonable chance of success even if it does.

I should point out that the number of commits to the project on Google Code isn't quite indicative of the amount of refinement it has undergone; much of the development has been versioned in a private Git repository, with only releases pushed to SVN. However, I'll reiterate what others have pointed out: Always run vss2git on a copy of your repository. The files are opened read-only, but you don't want locking issues when another user tries to update the repository in VSS leaving it in an inconsistent state.

As for Git on Windows, it works fine these days (I use msysgit), even for developers without a Unix background. (My Windows-only Delphi coworkers picked it up without a problem and seem to love it.) Of course, if you have developers allergic to command-line usage and that demand GUI integration with various IDEs, you might be better off with SVN. You'll lose the awesome speed and flexibility of a DVCS, but SVN has more mature integration. And supposedly SVN branching is no longer as painful as it once was.

Trevor Robinson