FrOSCon08: Versionsverwaltung mit Bazaar
by Philipp Strube on Aug.25, 2008, under Entwicklung, Veranstaltungen

Wir sind dieses Wochenende auf der FrOSCon 2008 in St. Augustin bei Bonn. Die FrOSCon ist eine Konferenz zum Thema freie und Open Source Software.
Neben einem Vortragsprogramm zu den verschiedensten Themen bietet die FrOSCon, die bereits zum Dritten mal stattfindet, den Besuchern Workshops, Stände und ein gelungenes Rahmenprogramm. Gestern Abend hatten die Veranstalter zum Social Event eingeladen. Mit Grillfleisch, Würstchen, Bier, Cocktails und Musik war dabei für alles gesorgt.
Mit Git, Mercurial und Bazaar gibt es drei große Vertreter von verteilten Versionskontrollsystemen. Der erste Vortrag den wir uns am Sonntag angehört haben war von Lenz Grimmer zum Thema bzr – The Bazaar source revision control system – An Introduction.
Dabei wurde übersichtlich und verständlich das Grundkonzept von Bazaar gezeigt, es wurden Besonderheiten aufgeführt und Vorteile und Schwächen diskutiert.
Im Gegensatz zum altehrwürdigen CVS und auch zum unter dem Motto A better CVS angetretenen SVN benötigen Bazaar, genauso wie Git und Mercurial, keinen zentralen Server. Die Revisionskontrollinformationen werden im Verzeichnis selbst, bei Bazaar in .bzr, gespeichert. Auf diese Weise eignet sich Bzr für eine Vielzahl von Anwendungsfällen auch über die Softwareentwicklung hinaus. Z.B. lässt sich damit auch wunderbar die Änderung an Konfigurationsdateien in Verzeichnissen wie /etc o.Ä. verfolgen.
Dadurch, dass es keinen zentralen Server mehr gibt, gibt es verschiedene Möglichkeiten Änderungen am Quelltext mit anderen zu teilen. Da wären zum einen die Möglichkeiten push und pull. Diese setzen vorraus, dass man lesend, für pull, oder sogar schreibend, für push, auf das Verzeichnis mit dem Quelltext zugreifen kann. Dies kann über Samba, nfs oder jegliche andere Möglichkeiten geschehen. Ist ein Zugriff auf das Dateisystem nicht möglicht, gibt es mit send die Möglichkeit die Änderungen direkt per E-Mail zu senden. Dabei sendet Bazaar dann aber nicht nur einen Patch, den der Empfänger selbst einpflegen muss, sondern zum einen eine Übersicht der geänderten Dateiem im Text der E-Mail und als Anhang eine Datei die Bazaar direkt importieren kann.
Im großen und ganzen hat mich der Vortrag zu Bazaar überzeugt. Wir setzen bei uns momentan einen SVN Server ein um unsere Versionskontrolle zu machen. Das funktioniert auch soweit ganz gut, aber wenn man mal keinen Zugriff auf diesen Server hat, z.B. weil man grad im Zug sitzt hat man keine Versionskontrolle. Mit Bazaar kann man dann lokal arbeiten. Ausserdem gibt es ein Plugin für Bazaar, dass dieses mit einem SVN Server verbindet. Für die ganz mutigen gibt es auch ein Tool, dass ein bestehendes SVN Repository komplett in Bazaar umwandelt. Deshalb und auch weil man immer wieder darüber stolpert habe ich schon oft darüber nachgedacht auf eins der dezentralen System umzusteigen. Bisher aber immer den Aufwand, zum einen sich für eins zu entscheiden und dann aus dem bekannten System zu migrieren, gescheut. Wenn wir es diesmal dann tatsächlich tun, werden wir natürlich hier nochmal von unseren Erfahrungen mit Bazaar im Einsatz berichten.
Alle Informationen zur Bzr findet man auf der Bazaar Homepage.
Zur Frage ob man nun Bazaar, Git oder Mercurial benutzen sollte hat der Referent eine einfache Antwort gegeben: Im Endeffekt spielt es keine große Rolle. Man sollte einfach das nehmen, was einem am besten gefällt. In seinem Fall ist das Bazaar.
Bildquelle: Bazaar Logo