Personal Catastrophic Fail Event

A couple of days ago I was pondering DVCS whilst wandering along an icy road. Not focusing on the ice proved disastrous. My right foot flew forward and i landed flat on my ****, much to the amusement of my fellow codethinkers. My head bounced off the tarmac and my elbow hit.. well who knows, but my elbow ended up pretty damn swollen. The day after brought little mercy – I seemed to have pulled muscles i didn’t even know I had and looking far left or right proved challenging, as did the simple act of putting my bag over my shoulder. Difficulty sleeping followed.

My point is, all this talk of DVCS caused me physical harm. Discussion considered harmful, lesson learned.

A couple of interesting points were raised about the git-serve bridge which I would like to answer, regardless of what infrastructure GNOME migrates to. I should have been more clear from the start, but the bulk of the work to implement the Git protocol is happening in an upstream project called dulwich. Theres no relation to Bazaar, and might be a nice library for anyone doing Git work in python (it doesnt need to spawn git processes to operate). The code there is based on some earlier work by James Westby and its current maintainer is Jelmer Vernooij. Any code for the git-serve mapping between Git and Bazaar is getting added to the bzr-git plugin, and again i’m working with Jelmer.

I’ve written some basic responses to the common gut reactions on the Bazaar wiki.

In the context of GNOME, a more interesting question was about how to merge branches from people not using GNOME infrastructure and a different VCS to the maintainer. First of all, why arent they using us? But one interesting thing i’d like to see is a code review system with tight VCS integration. For example, using dulwich to allow people to push a branch to review board and convert it into a review automatically. (The Git protocol will send only the commits that need to be merged). Anyone can push, no plugins or setup needed by the contributor. Then we can allow people to land a merge from review-board in the browser, or merge from review-board into their local branch or even request buildbot test the branch first. git:// is a protocol. We implement lots of other protocols in the freedesktop world, lots of them far more complicated, lots of them much less open. So this doesnt scare me. Its just an efficient way of swapping patches. And of course we can reuse bzrlib for supporting Bazaar.

Most points that have been raised have a valid counter-argument if you approach them with a “we can” attitude, but going over them would likely lead to more ice slipping. I will be at FOSDEM, be sure to bring a stick.

Even if we don’t use Bazaar (and dulwich) as the platform for our core source code hosting, we can still build lots of cool tools and services around GNOME with it. If you want to help out get in touch, or get in #gnome-bzr.

Tags: , , ,

3 Responses to “Personal Catastrophic Fail Event”

  1. Alexander Larsson says:

    What do you mean by “First of all, why arent they using us?”. Isn’t the idea behind distributed vcs that everyone is on equal footing and you don’t need to e.g. have an account on the gnome systems.

  2. John Carr says:

    @Alexander Larsson: Sure, but the question i’m asking is: why would people not use GNOME hosting? Is it purely the accounts thing? Perhaps we should make it easier to get an account. Maybe to have your own branches of existing GNOME modules (and thats the only place you have access to commit to) you only have a github type signup to go through.

    Lets say you review changesets online in the web frontend, its not a stretch to say “I’d rather use GNOME cgit and only cgit than have to keep switching between lots of different gitorious and cgit and gitweb instances and github”.

    I don’t see a preference for offsite hosting as anything other than a sign that GNOME hosting is rubbish.

    DVCS is meant to help people collaborate – thats why merging is so good. I don’t really like finding failed plugins for an app I hack on 7 months too late when browsing gitorious, i want to know about them when they are active so I can help the new contributors.

  3. Benjamin Meyer says:

    A review website is not the way to go. I wrote out all the fun pros and cons here:

    http://benjamin-meyer.blogspot.com/2008/08/code-review-should-be-free.html