Git: Workflow & Code Review

Git-basierte Workflows und Code Reviews sorgen dafür, dass ein Projekt sauber abläuft.

Ein guter Prozess zur Verwaltung von geschriebenem Code ist die wohl wichtigste Grundlage für effiziente Teams. Nur wer seinen Code und all seine Versionen im Griff hat, kann ein sauberes Deployment durchführen.

Im Internet sind zahlreiche Workflows zur Verwaltung der eigenen Code-Base zu finden. Doch nicht jeder Workflow passt zu jedem Team. Genauso wenig sollte ein Workflow für alle Projekte erzwungen werden. Viel zu unterschiedlich sind die einzelnen Strukturen und Voraussetzungen, die häufig auch der jeweilige Kunde und dessen Infrastruktur mitbringt. Deshalb haben wir uns bei 3m5. darauf verständigt, basierend auf einzelnen Grundsatzentscheidungen, ein eigenes agiles Git-Konzept zu entwickeln. Dabei haben wir uns für eine hybride Lösung entschieden:
 

Organisiert von einem Git-Master verfolgen wir in unseren Projekten rollenbasierte Branches, für jedes Zielsystem einer. Dazu gibt es so genannte Feature-Branches für die laufende Entwicklung. Dabei wird jede Erweiterung im Code in einem separaten Strang programmiert und erst nach dessen Freigabe in den Hauptentwicklungszweig migriert. Diese Freigabe erfordert einen umfangreichen Code-Review durch das Entwicklungsteam.


Die zentralen Fragen dabei: Wurden alle Styleguides eingehalten? Ist der Code so strukturiert, dass auch andere Entwickler sofort damit zu Recht kommen? Sind offensichtliche Fehler enthalten, die erst noch beseitigt werden müssen? Erst, wenn das alles kontrolliert und Unstimmigkeiten beseitigt wurden, kommt das Feature, abhängig von der Kundenanforderung, zurück in den aktuellen Entwicklungszweig.
 

Wie aber geht man in so einem Modell mit einem Hotfix für das Live-System um? In einigen Git-Workflows müsste dazu der laufende Entwicklungszweig zurückgesetzt werden. Deshalb haben wir uns an dieser Stelle für eine Abweichung entschieden, und spalten für Hotfixes direkt vom Live-Branch ab. Nach erfolgreicher Freigabe (welche ebenfalls ein umfangreiches Code-Review erfordert), verteilt der Git-Master den Hotfix auf alle anderen Systeme. Das Tagging einzelner veröffentlichter Versionen, vereinfacht es, später nochmal auf eine bestimmte Version aufzusetzen.

Du hast noch Fragen?
Wende dich an
Sven Poliwoda
Jetzt unverbindlich anfragen

Cases

Diese Webseite nutzt Cookies, um sicherzustellen, dass Sie bei der Nutzung die bestmögliche Erfahrung machen. Weitere Informationen zum Datenschutz erhalten Sie in der Datenschutzerklärung.
Ablehnen Cookies zulassen