Rezension: Pro Git

Das SCM Git hat meinen Programmieralltag voll im Griff. In privaten Projekten nutze ich fast nur noch Git und in der Firma hilft mir git-svn bei der täglichen Arbeit. Da ich der Meinung bin, man sollte die Tools auch verstehen, mit denen man tagtäglich umgeht, habe ich mir das Buch „Pro Git“ von Scott Chacon zu Gemüte geführt.

In 9 gut gegliederten Kapiteln führt der Autor den Leser vom absoluten Einsteiger in Sachen Versionskontrolle bis hin zum Semiprofi in Sachen Git. Von den Grundlagen der Versionsverwaltung geht es sehr schnell zu den ersten Git Befehlen und zum ersten Repository sowie den ersten Checkins. Dabei beschreibt der Autor wie man als Entwickler Zugriff auf die Historie gelangt, Änderungen rückgängig macht und Tags setzt.

Weiter geht die Reise in Kapitel 3 in das Branching. Sehr gut erklärt Scott in diesem Kapitel, was es mit Branches in Git auf sich  hat, warum ein Branch anlegen, so gut wie keine Zeit in Anspruch nimmt und auf welchen Wegen mehrere Branches wieder zusammengeführt werden können. Gerade im Hinblick auf die Arbeit mit git-svn ist das Rebasing ein sehr wichtiges Thema, welches in diesem Kapitel ebenfalls sehr anschaulich und leicht verständlich beschrieben wird.

Die Kapitel 4 und 5 beschäftigen sich mit der verteilten Arbeit mehrerer Entwickler mit Git. Scott Chacon erklärt, wie Änderungen zwischen mehreren Entwicklern ausgetauscht werden können, wie man einen Server als zentralen Punkt in einem verteilten Workflow aufsetzt und wie man ein Projekt mit Hilfe von Git pflegt.

Das sechste Kapitel beschäftigt sich mit den Tools von Git. Themen wie Stashing, Ändern der Historie, das Debugging mit Hilfe von Git und die Arbeit mit Submodulen werden beleuchtet. Nach dem kurzen Ausflug in die Welt der Tools widmet sich der Autor in Kapitel 7  den verschiedenen Anpassungsmöglichkeiten von Git. Er erklärt, wie Git per Konfigurationen, Attribute und Hooks an die persönliche Arbeitsweise angepasst werden kann. Auch sehr interessant ist die Erläuterung, wie mittels Hooks projektweite Policies umgesetzt werden können.

Kapitel 8 geht auf die Interaktion von Git mit anderen Systemen ein. Dort findet sich auch nochmal alles Wichtige zum Arbeiten mit Git in einer reinen Subversion-Umgebung. Auch wird hier kurz auf die Migration bestehender SCM Systeme auf Git eingegangen.

Das letzte Kapitel war für mich das spannendste. Denn das beschäftigt sich mehr mit den Eingeweiden von Git. Mittels sogenannter plumbing commands zeigt der Autor, wie das Repository im inneren Aufgebaut ist. Er zeigt die verschiedenen Objektarten und wie diese zusammenspielen. Sicherlich geht es noch technischer, aber für den allgemeinen Überblick und für ein Grundverständnis von Git, reicht mir die Tiefe alle mal aus.

Zusammenfassend kann ich Pro Git jedem Entwickler empfehlen, der mit Git arbeitet, arbeiten möchte oder sich einen Überblick über die Möglichkeiten des SCM verschaffen möchte. Pro Git steht für alle Leser kostenfrei bereit. Wer den Autor unterstützen möchte, kann sich auch ein gedrucktes Exemplar bestellen.

Rezension: Pro Git
Markiert in: