Version Control Systems

There are quite a few revision control systems available these days. For open source people CVS is no longer the only game in town as it was for quite a long time after it launched in 1990. Subversion’s goal was to be a better CVS however distributed version control systems have inherent advantages and becoming more common.

I think an inflection point in revision control systems was when the Linux kernel development changed from Bitkeeper. Linus Torvalds implemented the first version of Git, Matt Mackall created Mercurial and in parallel at around the same time Bazaar was created by Canonical which is heavily used in the Ubuntu Community. There are some good comparisons of the strengths and weaknesses of each. FLOSS Weekly, the audio podcast, has covered both Git (twice) and Mercurial.

The most popular free hosting sites allow the use of different tools. Sometimes supplementary tools like GUI interfances or tools like github-cli (command line issue tracker API access) can make a big difference in adoption rates for some coding groups.

Coders, what version control systems do you prefer and why? Sysadmins, when you need to look at source code what version control systems do you find projects most frequently use?

2 thoughts on “Version Control Systems

  1. I’ve been using git for three years and love it. Compared to cvs and svn, it’s really easy to set up, and its distributed nature makes it easy to try new things (just clone your repository, try your new adventurous git trick on the clone, then apply the same change to the main repository if it turns out to work). Git is also really handy for hacking on other people’s code — it’s very easy to import a series of tarballs into a local git repository, then use git-grep and git-log -S (pickaxe) to find the bit of code history that you need.

    In addition to my source code, I use git to version-control my webcomic as I draw it. An unexpected side effect is that I can now use git to generate a movie of the comic being drawn. If this sounds interesting, you can find a sample movie and instructions here:

    P.S. If you’re just getting started with git, “Everyday GIT With 20 Commands Or So” is a great place to start. It’s included in the git-doc package on Debian and Ubuntu.

Leave a Reply