© saicle/Shutterstock.com
PHP Magazin
Best Practices: Das Formulieren aussagekräftiger Commit Messages

Klartext für Git und Co.

Source Control Management Systems (SCM) gehören für Entwickler zum Standardrepertoire. Aus dem breiten Angebot der Tools [1] ist Git eine der beliebtesten Lösungen. Obwohl viele Nutzer mit den weiterführenden Konzepten im Umgang mit SCM-Werkzeugen geübt sind, wird die Möglichkeit zu jedem Commit eine Beschreibung zu hinterlegen etwas vernachlässigt. Das Formulieren aussagekräftiger Commit Messages kann in vielen Situationen die Produktivität im Entwicklungsteam verbessern.

Marco Schulz


Die Erkenntnis, dass Commit Messages von Bedeutung sind, haben einige Technologieblogs [2], [3], [4] im Internet bereits sehr anschaulich ausgeführt. Die dort beschriebenen Erfahrung haben die Meisten mittlerweile selbst gesammelt. Viele Unternehmen haben auf diesen Umstand reagiert und formulierten Style Guides für das Verfassen von Commit Messages. Beim Durchstöbern der Repositorien des Cloud-Sourcecodehosters GitHub ist eine deutliche Verbesserung der gesamten Situation zu erkennen.

Trotz der vielen und sehr wertvollen Ratschläge gibt es einiges an Optimierungsmöglichkeiten. Eine wesentliche Überlegung ist die Tatsache, dass man als Entwickler seinen Fokus auf das Umsetzen der geforderten Funktionalität gerichtet hat und weniger auf die ebenso wichtige Dokumentation. Das Problem ergibt sich daraus, dass man sehr stark in die Thematik vertieft ist und viele der Details, die für Außenstehende wertvoll sind, als zu trivial bewertet. Dieser Umstand erschwert es, einen geeigneten Kommentar zu verfassen.

Best Practices für Git und Co.

Es finden sich häufig kommentierte Revisionen mit der Beschreibung „Anpassen der Build-Logik“. Das gibt aber keinen Aufschluss darüber, um was für eine Anpassung es sich handelt. Wurde die Versionsnummer für ein Release verändert oder wurde eine neue Abhängigkeit zu einer Bibliothek hinzugefügt? Oder wurde die aktuelle Version eines Artefakts wie JUnit angepasst und musste gegebenenfalls diese Anpassung wegen Inkompatibilitäten zurückgezogen werden? Alle diese Informationen bieten einen enormen Mehrwert in der Projektarbeit, ohne dass E-Mail-Postfächer verstopft werden. Jeder Entwickler erkennt mit einem Blick in die Revision History des SCM-Systems den aktuellen Status des Projektes.

Um diese Situation zu entlasten, hat der Autor eine Methode entwickelt, die es dem Nutzer durch ein vordefiniertes Vokabular ermöglicht, seine Arbeit leichter zu reflektieren und sein Ergebnis so ausdrucksstark formulieren zu können. Die erarbeiteten Ausdrücke orientieren sich vollständig am üblichen Sprachgebrauch in Softwareentwicklungsprojekten. Die hier beschriebene Methodik eignet sich übrigens auch für andere Bereiche der Softwareentwicklung. Die vorgestellten sprachlichen Mittel können ebenso in agilen Teambesprechungen angewendet werden. Speziell in zeitlich limitierten Treffen wie beim Daily Scrum kann das die Kommunikation verbessern.

Strukturelemente

Wie bereits erwähnt, handelt es sich bei der vorgestellten Methode um eine Sprache mit eine...

PHP Magazin
Best Practices: Das Formulieren aussagekräftiger Commit Messages

Klartext für Git und Co.

Source Control Management Systems (SCM) gehören für Entwickler zum Standardrepertoire. Aus dem breiten Angebot der Tools [1] ist Git eine der beliebtesten Lösungen. Obwohl viele Nutzer mit den weiterführenden Konzepten im Umgang mit SCM-Werkzeugen geübt sind, wird die Möglichkeit zu jedem Commit eine Beschreibung zu hinterlegen etwas vernachlässigt. Das Formulieren aussagekräftiger Commit Messages kann in vielen Situationen die Produktivität im Entwicklungsteam verbessern.

Marco Schulz


Die Erkenntnis, dass Commit Messages von Bedeutung sind, haben einige Technologieblogs [2], [3], [4] im Internet bereits sehr anschaulich ausgeführt. Die dort beschriebenen Erfahrung haben die Meisten mittlerweile selbst gesammelt. Viele Unternehmen haben auf diesen Umstand reagiert und formulierten Style Guides für das Verfassen von Commit Messages. Beim Durchstöbern der Repositorien des Cloud-Sourcecodehosters GitHub ist eine deutliche Verbesserung der gesamten Situation zu erkennen.

Trotz der vielen und sehr wertvollen Ratschläge gibt es einiges an Optimierungsmöglichkeiten. Eine wesentliche Überlegung ist die Tatsache, dass man als Entwickler seinen Fokus auf das Umsetzen der geforderten Funktionalität gerichtet hat und weniger auf die ebenso wichtige Dokumentation. Das Problem ergibt sich daraus, dass man sehr stark in die Thematik vertieft ist und viele der Details, die für Außenstehende wertvoll sind, als zu trivial bewertet. Dieser Umstand erschwert es, einen geeigneten Kommentar zu verfassen.

Best Practices für Git und Co.

Es finden sich häufig kommentierte Revisionen mit der Beschreibung „Anpassen der Build-Logik“. Das gibt aber keinen Aufschluss darüber, um was für eine Anpassung es sich handelt. Wurde die Versionsnummer für ein Release verändert oder wurde eine neue Abhängigkeit zu einer Bibliothek hinzugefügt? Oder wurde die aktuelle Version eines Artefakts wie JUnit angepasst und musste gegebenenfalls diese Anpassung wegen Inkompatibilitäten zurückgezogen werden? Alle diese Informationen bieten einen enormen Mehrwert in der Projektarbeit, ohne dass E-Mail-Postfächer verstopft werden. Jeder Entwickler erkennt mit einem Blick in die Revision History des SCM-Systems den aktuellen Status des Projektes.

Um diese Situation zu entlasten, hat der Autor eine Methode entwickelt, die es dem Nutzer durch ein vordefiniertes Vokabular ermöglicht, seine Arbeit leichter zu reflektieren und sein Ergebnis so ausdrucksstark formulieren zu können. Die erarbeiteten Ausdrücke orientieren sich vollständig am üblichen Sprachgebrauch in Softwareentwicklungsprojekten. Die hier beschriebene Methodik eignet sich übrigens auch für andere Bereiche der Softwareentwicklung. Die vorgestellten sprachlichen Mittel können ebenso in agilen Teambesprechungen angewendet werden. Speziell in zeitlich limitierten Treffen wie beim Daily Scrum kann das die Kommunikation verbessern.

Strukturelemente

Wie bereits erwähnt, handelt es sich bei der vorgestellten Methode um eine Sprache mit eine...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang