Skip to main content

Code Versioning - CVS or SVN?

Tough question as I have experience with neither. While I tend to go with older, more established systems as it's easier to climb the learning curve with abundant reading material and support, it sounds like going for SVN might be anologous to having chosen Postfix over Sendmail to run all my mail.

Postfix decision was made some 5 years ago and it was meant to be a rework of Sendmail at the architectural level and security taken into consideration, but essentially the same features as Sendmail. Looking back, with no security issues and managable administration (even I could handle it :) I think that was a good call.

For the same reason SVN looks like a good choice, even though the system has been around for only a couple of years (2004?). It might help us to scale into future better and coming from (most ly) the original developers of CVS, it should be a continuation, and not a radical diversion, of the mature but aged CVS.

I haven't read about any major limitations of SVN, but one could be that SVN revisions numbers are done for whole projects and not at the file level.

What about TRAC?

Trac is a really nice package for developers (or communities) who are working on individual projects. It helps to manage versions (SCM), documentation on WIKI and bugs on the built-in bug-tracker all in a single system. However, the situation we have at Wapsol is that the number of projects is large and going with Trac might mean having several installations of it.

Resulting from the number of projects is a large amount of documentation which is constantly modified. I need this to be searchable and databases (so that parts of it can be released on customer portals like Wapsol Partnernet and shinnin.co.uk)

Our bugs/issues are currently logged into a Mantis database for all those projects. Moving these to Trac will involve either migrating them (with some Perl db calls) or just discontinue using Mantis and restart new projects in Trac.

Overall, I need something easy to manage and a package that's supported for years to come. Good looks & EOU helps, and Trac takes it away here :)

Comments

temo said…
i've used both extensively and I prefer SVN greatly over CVS..There isn't much of a learning curve for svn if you're familiar with cvs...if anything, it's easier..things like branching and tagging are simpler to understand and use...in my humble opinion:)