Subversion is Rocket Science Without Requiring A Rocket Science Degree

After using Microsoft’s Visual SourceSafe for the greater part of 10 years Conarc has had code to track, we converted to Subversion.  We made the switch almost a year ago and have been happy ever since.  I too had used VSS for the majority of professional career and just accepted the flaws, code destruction, and administration hard-ships.

Problems We Had with VSS

  • More times than not we had to rebuild or repair the database.
  • It’s slow…No. It’s grow-old-with-pressure-sores slow…when working off the LAN.  We tried using it over a VPN connection and through the WebService plug-in to Visual Studio with IIS on the server.  Forget it
  • The user administration is half-baked and not well (if at all) integrated with Active Directory
  • Merging was a pain if not completely confusing.  We decided to stay with Exclusive checkouts and just yell over the cubes to each other when someone had to use a file
  • It’s rumored that Microsoft isn’t/wasn’t using it in-house for their development

While the above points aren’t numerous, they’re all galatically important to the viability of a source & version control system.  We used these dissatisfactions to find a replacement.

The Replacements

It only took a small amount of research.  Microsoft Team System or Subversion.   Both had a good price:  TFS is part of our Microsoft Partner MSDN Subscription and Subversion is open source.   Both were better peforming than Visual SourceSafe (easy enough to jump that hurdle).  We chose Subversion though for the following reasons:

  • Stability of datastore:  The database back-end is file-based and well formed.  Also, backup is a cinch.  Zip up the directories and push them to a Drobo or other such NAS.  Test  recovery is just as easy reversing this process.
  • Speed:  Updates and commits are almost as fast as standard file transfers since it is file-based.
  • Setting user access:  We administer the repositories by simply setting directory security where the repo resides.
  • Good UI:  We wanted an easy UI for use inside and outside Visual Studio.  There are numerous plug-ins (AnkhSVN), Explorer shell additions (TortoiseSVN) and full Windows apps available that provide great interfaces to interact with the SVN repos.
  • Merging code:  The merge tools that are included with the above UI apps are usually awesome out of the box, but often you can even plug in your own.  I have my devenv set to use WinMerge.
  • Just good source control:  TFS has project management and other cool solutions in it, but we have all those processes in place in other systems/business workflows because VSS didn’t have them.  We sought to keep the migration a simple one-for-one replacment
  • Rumors Aside:  I’m not sure what MS uses but dogfooding is so important to any software shop

Our conversion at Conarc worked out so well that I put Subversion to work for my personal projects/sites using RabbitVCS on my Linux systems.

Give Subversion a try on a project or two if you’re hoping to leave Visual SourceSafe behind.

Post to Twitter

Post a Comment

Your email is never shared. Required fields are marked *

*
*
Blog WebMastered by All in One Webmaster.