Tortoise SVNWhile listening to the popular audio show DotNetRocks a couple of years ago, one of the guests mentioned a great up and coming version control system that had the potential to steal some thunder from the ever popular open source version control system CVS.   The system was called SubVersion (SVN) and has several client interfaces that are available to interact with it.  I ended up doing some experimenting with it and was amazed at the simplicity of how it worked and how intuitive the interface was.  We have been using this system internally for over two years now.

I had experimented in the past with CVS and some other commercially available packages at some clients I had worked at, but these systems were all hard to get setup and work with and some of them were very expensive. It just didn’t make logical sense a lot of times.  That’s where SVN is so very different. 

The premise of SVN is you install a repository on a central machine.  This repository has its own database structure and serves as the place where files of any type can be versioned and stored with markup describing the changes. 

You then use a wide assortment of client interface tools that interact with the repository across the network or the internet.  We have been using TortoiseSVN as the interface at Tradewinds.  It is a very simple shell extension that adds a right click menu to windows.  This is how you check things in and out, all by right clicking files or directories.

You can click this link over at CodeProject for a great article with some screenshots detailing how the system works in addition to getting an idea of the options for tying it into Visual Studio. 

Using version control adds all kinds of benefits, particularly when you have multiple people working on the same projects over a period of time.  It allows you to revert code back and to not have to worry about keeping track of versions by hand, not to mention it is a nice way to document a change you make so that when you go back a few weeks later you know exactly who did what to what piece of code.  Here’s a more in depth article that outlines some of the reasons you’d want to leverage a version control system.

If your company is writing code today, and it is not version controlled, you need to take a few minutes to ponder the benefits of taking a few minutes and implementing a version control system for checking your changes in and out of.

Popularity: 16% [?]

Other Posts that May Interest You