Skip to Content

Version Control

An important part of any coding project is the ability to roll back changes to a previous version - either for the whole project, or for individual components. As a result there are a number of version control (or revision control) options out there. The most well known include CVS, Subversion, and Microsoft Visual Source Safe. If you are starting a new revision system, then I would recommend using Subversion. Here's why:

First, Subversion is a direct descendant from CVS. The developers looked at CVS, considered where it was not sufficient and then built Subversion to address these issues. Therefore, Subversion is one of the most recent and up to date / cutting edge revision control systems available.

Second, MS Visual Source Safe has been around for YEARS without update. A quick check of their website shows the current version is 6.0. This is the same version I was using 3+ years ago. It does work, but when it breaks down, it has a habit of corrupting the repositories, which means quite some effort to get back to the original state. In addition, MS Visual Source Safe lacks a very large number of features that CVS enjoyed, and Subversion has enhanced. For instance, out of the box, VSS cannot be accessed via a web interface, and does not allow access from remote locations unless a drive can be mapped to that location. CVS and Subversion allow access via the command line, a number of third party interfaces, through the web, over webDAV, and even over SSH.

Third, CVS is most dominant revision control system in the open source world, but is quickly being replaced by Subversion. The concepts you may know about CVS still apply, and the commands to use Subversion are very similar. Within the next year or two I suspect that Subversion will be THE standard for revision control in the Open Source world.

Have I peaked your interest? If so, check out Version Control with Subversion - a free O'Reilly book on the system.

If you are brand new to revision control, be patient. It does take a little while to get the hang of it, but once you do it'll be second nature. And the benefits of revision control will save your butt many many times. (it saved mine tonight, hence the reason for posting on the topic.. :) )