Benad's Web Site

OK, I'm pretty tired today, at least enough to make it difficult to write anything, so I'll post something "obvious".

If you want some simple version control for your code, or event or  a few plain text and binary files, then you should use Mercurial ( http://mercurial.selenic.com/ ). If you're using a centralized version control system like CVS or Subversion, or worse one of those myriads of commercial systems like Perforce, ClearCase, Source Safe or StarTeam, then do yourself a favor and try Mercurial. (If you prefer Git, no problem, I'm not making this a Mercurial versus X kind of post.)

Mercurial doesn't need a server, and if you want to push or pull your code to another machine or even if you want to set up your own server it's incredibly easy to do so. Apart from backups, no administration is needed to make your own Mercurial server. Or you can use a free hosting service like Bitbucket ( https://bitbucket.org/ ). Also, branching is dead simple and safe: In its simplest form, all you want to do is "clone" a repository. Since Mercurial is made in Python, it's easy to install on all platforms, and it has a nice plugin system to easily make it do whatever you want.

It has a smooth learning curve too, be it when using it on the command-line or using a graphical tool. You first only need to know about the basic commands (add, commit, update), and little by little you can learn the more advanced features. There's no need to learn complicated things to do the simple things, so it gets out of the way when you're trying to work.

Oh, and it's free and open-source, so no excuses, just use it.

Published on January 20, 2012 at 16:11 EST

Older post: Book: The Big Short

Newer post: Selling Out?