Ein alter Hut, aber gut, Chris Beams schreibt über die geheime Kunst, hilfreiche Git-Commit-Nachrichten zu schreiben. Hier ist, warum er denkt, dass es so wichtig ist
Wenn Sie sich noch nicht viele Gedanken darüber gemacht haben, was eine großartige Git-Commit-Nachricht ausmacht, dann haben Sie vielleicht noch nicht viel Zeit mit `git log` und verwandten Tools verbracht. Hier gibt es einen Teufelskreis: Da die Commit-Historie unstrukturiert und inkonsistent ist, verbringt man nicht viel Zeit damit, sie zu nutzen oder sich darum zu kümmern. Und weil sie nicht genutzt oder gepflegt wird, bleibt sie unstrukturiert und inkonsistent.
Aber ein gut gepflegter Log ist eine schöne und nützliche Sache. `git blame`, `revert`, `rebase`, `log`, `shortlog` und andere Unterbefehle erwachen zum Leben. Das Überprüfen von Commits und Pull Requests anderer wird zu etwas Lohnendem und kann plötzlich unabhängig durchgeführt werden. Zu verstehen, warum etwas vor Monaten oder Jahren passiert ist, wird nicht nur möglich, sondern effizient.
Der langfristige Erfolg eines Projekts beruht (unter anderem) auf seiner Wartbarkeit, und ein Wartender hat wenige Werkzeuge, die mächtiger sind als der Log seines Projekts. Es lohnt sich, die Zeit zu investieren, um zu lernen, wie man ihn richtig pflegt. Was anfangs eine Mühe sein mag, wird bald zur Gewohnheit und schließlich zu einer Quelle des Stolzes und der Produktivität für alle Beteiligten.
Dieser Beitrag passt gut zu einem aktuelleren Beitrag zu diesem Thema. Chris liefert ein Format für Konsistenz, Stephen Amaza greift dieselbe Idee auf und erweitert sie mit Vorschlägen, wie man einer Commit-Nachricht besseren Kontext verleiht.
Ich war bei Commit-Nachrichten schon immer ziemlich faul, und es gab sicherlich einige Male, in denen mir das auf schreckliche und unerwartete Weise auf die Füße gefallen ist. Ein Trick, den ich von nun an sicher anwenden werde: die erste Zeile der Nachricht als Titel verwenden und dann einen viel längeren Absatz folgen lassen, wenn der Code auf den ersten Blick nicht verständlich ist.