CruiseControl.rb and Bazaar

Today I was investigating Continuous Integration solutions for rails projects. In the end I ended up settling on CruiseControl.rb mainly because it’s a rails app and most of the others where Java based.

The only problem is that CruiseControl.rb doesn’t currently support Bazaar, in fact the released version only supports SVN while the development version supports Git and Mercurual.

Anyway after a couple of hours of hacking I came up with the following patch which I’ve filed as a bug.

Bzr keeps easing my pain

There has been a trend in the Annodex community lately to move towards using git rather than SVN for source code management. Now while I applaud the move to a DVCS, I hate having to use git. It is just extremely painful IMHO.

I just shouldn’t have to look up a man page or tutorial every time I want to use a tool. Something I don’t have to do with any of CSV, SVN, bzr or mecurial. Git may have some benefits under the hood but I think its user interface still has a long way to go. I can totally understand how git is the perfect tool for the kernel community but I just don’t think it makes a lot of sense for some other communities who have jumped on the badwagon.

The nice folks over in the bazaar community have found a way to ease my pain. Some of you may be familiar with the bzr-svn plugin written by Jelmer Vernooij. Well he has recently expanded on the work started by Rob Collins and now we have a working bzr-git.

johnf@zoot:~$ bzr branch git://git.xiph.org/liboggz.git
Branched 734 revision(s).
johnf@zoot:~$ cd liboggz.git/
johnf@zoot:~/liboggz.git$ bzr log -r -1
------------------------------------------------------------
revno: 734
git commit: ef3b0ebc1fdc299a09119df01fbd1c8867f90d8b
committer: Conrad Parker
timestamp: Wed 2009-04-01 00:59:36 +0000
message:
  Update the link to the theora spec
  Patch by Ralph Giles

Joy!!! Many thanks to the wonderful guys in the bazzar community for making my life so much easier. All we need now is bzr-hg and I’ll never have to leave my comfort zone đŸ™‚

bzr-svn and svn revisions

I was updating an svn branch today using bzr, thanks to bzr-svn, and I wanted to know what svn revision I was at.

You can easily see the bzr revision by running

johnf@zoot:~/trunk$ bzr revno
34

But it gives no indication of where you are in SVN land. After a bit of rummaging around I discovered the following

johnf@zoot:~/trunk$ bzr version-info
revision-id: svn-v3-trunk0:90e61fa5-4541-0410-a685-e5b9dba3c764:trunk:74
date: 2008-05-29 19:24:44 +0000
build-date: 2008-06-14 19:10:59 +1000
revno: 34
branch-nick: trunk

The revision-id field seems to be the key and seems to indicate I’m using SVN revision 74. Checking the branch via the web confirmed that.