René Preißel, Bjørn Stachmann: Git. Dezentrale Versionsverwaltung im Team. Grundlagen und Workflows. 3., aktualisierte und erweiterte Auflage. Heidelberg 2016, 327 Seiten, Paperback, 32,90€.
Neulich hat mein Chef dem Team einen Git-Workshop spendiert. Vielen Dank dafür und an den Referenten Bernd Hort. Zum vertiefen, festigen und nachschlagen habe ich das Git-Buch von Preißel und Stachmann ausgesucht.
Die meisten der 31 Kapitel umfassen 10 Seiten oder weniger und gliedern sich in Grundlagen (Kapitel 1-3), tägliche Arbeit (Kapitel 4-14), Workflows (Kapitel 15-28) und Weiterführendes (Kapitel 29-31).
Im Vorwort finden sich wertvolle Hinweise zum Umgang mit dem Buch: Was muss ich lesen? Was kann ich als fortgeschrittener weglassen? Wo finde ich was? Und sie zeigen, dass sie den Stier Komplexität bei den Hörnern fassen wollen – mit Workflows. Das ist ein pragmatischer Ansatz. Beide Daumen hoch meinerseits, denn es ist genau das, was ich bei Loeliger als fehlend bemängel. Preißel und Stachmann bieten keine Befehlsreferenz – wollen sie auch gar nicht, sondern eine Hilfe für den Projektalltag. Der wird entweder mit der git-Konsole gemeistert oder mit einem GUI, und die zwei erklären, wie’s geht. Bei Klickibunti fiel ihre Wahl auf SourceTree – volle Punktzahl dafür, denn das setzen wir auch bei uns ein.
In der ersten Hälfte des Buches finden sich Erläuterungen zu grundlegenden Funktionen von git. Die einzelnen Kapitel sind in sich abgeschlossen und kurz und knackig ohne, dass es ihnen an Tiefe mangelt. Am Ende steht jeweils eine Zusammenfassung – das ist hilfreich.
Die andere Hälfte des Buchs befasst sich mit dem Thema “Workflows” und zeigt Vorgehen in alltäglichen Situationen: Wie fange ich an? Wann wird ein neuer Branch erstellt? Wie hilft git bei der Fehlersuche? Wie sorgen wir für die Auslieferung unseres Produkts? Was tun, wenn’s unübersichtlich wird? Wie kann man git und cvs gemeinsam nutzen? Wie kann ich auf git umsteigen? Es gibt ein Verzeichnis, das zu jedem beschriebenen Workflow eine aussagestarke Skizze zeigt und jeweils eine ganz kurze Beschreibung – als Gedächtnisstütze bestens geeignet.
Ein kurzes Kapitel behandelt die “Integration mit Jenkins”, anschließend werden noch einige Anregungen gegeben, was git sonst noch so kann: Themen wie “Patches”, “Archive”, “Hooks” und einiges mehr. Das letzte Kapitel behandelt in gewohnter Knackigkeit, wo es bei git hakelt.
Das Layout ist angenehm, keine Bleiwüste, aufgelockert durch Skizzen und “Schritt für Schritt”-Anleitungen. Die “Schritt für Schritt”-Anleitungen sind im Sinne von HowTos verfasst und haben ein eigenes Verzeichnis – toll. In der Marginalspalte finden sich Querverweise – praktisch.
Abgerundet wird das ganzen durch einen brauchbaren Index. Der listet nicht einfach alle Vorkommen aller Begriffe auf, sondern enthält 1) nur die interessanten Begriffe und 2) erwähnt er nur die wichtigen Seiten zum jeweiligen Begriff. So muss es sein.
Negatives? Ja. Die Haptik ist unangenehm, das Buch ist rutschig und kantig. Aber das gibt sich hoffentlich nach einiger Zeit steten Gebrauchs ;) Und es ist ein Paperback. Ein fester Einband wäre mir lieber gewesen.
Fazit: Praxisnah, alltagtauglich, gut zu lesen. Gutes Buch.