A few weeks ago, Mark Shuttleworth showed up on IRC, and invited several core developers from the Mercurial and Bazaar-NG to visit London, on Canonical, Ltd’s shilling. The purpose of the joint visit is to discuss possible points of collaboration between the two projects.
I got to come along as gadfly-in-chief, or filler-of-the-bug-database, or some such thing, but I am writing this entry from London, and the sprint will kick off tomorrow morning.
Each project is already actively snarfing code from the other. For example, Alexander Schremmer’s lovely branchview work lets you view the branch and merge history of a Mercurial repository, graphically, from within a regular web browser. It uses code from Bazarr-NG’s bzrk plugin to do the abstract graph rendering. On the other side, Goffredo Baroncelli has ported Mercurial’s built-in web server to run on top of bzr.
In terms of basic user interface (the stuff you need to learn in the first five minutes of use), the two projects are very similar. Indeed, many think-alike commands have identical names in each. Even the underlying data structures are similar, as evinced by Robert Collins recently writing a Bazaar-NG plugin that can pull from Mercurial repositories.
I’ll refrain from discussing the respective merits and drawbacks of each project, as I see them, for now. That can wait for a bit.
Over the next few days, we’ll see where and how we can find useful ways to discuss the differences between our respective approaches, and whether we can map a way to work together. It should be fun!