I have recently changed places of work and was given the task of setting up version control, in this case Subversion (SVN) for our development team. I started learning about this a while ago through a number of avenues form the WebDU conference, and a number of ColdFusion mailing lists.
Version control systems solve a number of issues for development teams such as concurrency (the ability to work on the same file at the same time), easy deployment an roll back, and most importantly it stores a complete history of all of the changes you make to a code base.
So why Subversion out of the long list of version control systems out there? Well, amongst the other main contenders were Microsofts Visual Source Safe (VSS) – which I have used and didnt like, it has lots of limitations and problems and most of the people I have talked to seem to agree on one thing, it doesnt work.
CVS is another well used alternative, but it also has a list of problems all of which Subversion set out to solve. CVS doesnt allow you to move or rename files or folders, they must be removed, renamed and then readded to CVS. Both of these systems are FREE and open source.
Subversion can run on its own but I would recomend you run it with Apache, this will allow you to take advantage of authentication options such as integration with Active Directory and allow you to run WebDAV – this allows you to use SVN from anywhere over the internet.
For the purposes of this exercise I wil provide version number of the software I used, so that we can all be on the same page. There are a number of pitfals with using the most up to date version of various parts be careful.
Now bear in mind that I installed this on a fully patched Windows 2003 machine. So If you want Linux or somthing similar I would go looking elsewhere.