Gabriel’s musings over DRCS and RCS
on Tuesday 18th September, 2007 Gabe speculated thusly…For the last couple of months we have been using a subversion server I setup for our version controlling. More recently I have experimented with newer (better?) version control systems. Subervion (svn) uses a central repository form which everyone must checkout working copies, and commit their changes there. However, there exists DRCS, or distributed revision control systems. These allow users to branch from other users, and commit to their own branches; or the central-model can be used.
It all started with Mercurial (hg). I began using this versioning system, it was fast, really fast and so efficient. It didn’t however quite fit my work flow. Normally I would do some developing at work, and then when I got home continue the dev work on my home computer. I soon found Mercurial to be highly dynamic, but lacking a little something I needed.
I moved on to Bazaar. I haven’t looked back since. Bazaar (bzr) does what mercurial does and what subversion does. You can have a central repository, but easily branch and merge like with mercurial. This is great for me. I develope on my laptop at work, commiting changes that go to the dev server. When I go home can checkout those changes and continue developing. However, at any point I can easliy branch, or disconnect my branch from the central repository. All revision is stored locally. Bzr isn’t quite as fast as hg, but we are still only talking about a couple of seconds for most operations.
Bazaar is incredibly versatile, and it can even be hooked up to launchpad.net for bug tracking and triaging.
The other contender was Git, but I didn’t look at that. It seemed about the same as Mercurial but a little harder to use, and no obvious advantages.
Tags: Revision Control