Artikelformat

Braindump: Git Commits in Zahlen

Vor kurzem hatte ich das Problem, dass es einen speziellen Branch gab, in den einige andere Branches gemerged wurden und der zudem noch ein paar Cherry-Picks enthielt. Nach dem Merge und Cherry-Pick „Fest“ sollten ein paar statistische Informationen aus Git gezogen werden.

Git bietet hier auch alles an, was man benötigt. Zuerst muss man sich die beiden Commits raussuchen, die den Bereich umfassen den man erfassen möchte. git log ist hier sehr hilfreich. Da man nun auch die Hashes der Commits hat, kann man einfach ein diff zwischen den beiden Commits ermitteln.

git diff <commit-hash1> <commit-hash2>

Als Output erhält man alle Code-Änderungen aufgelistet und das ist wenig Management tauglich. Also muss man die Ausgabe etwas einschränken. Hierfür benutzt man zum Beispiel --stat. So erhält man eine kurze Übersicht welche Dateien geändert wurden und wie viel sich geändert hat.

git diff --stat <commit-hash1> <commit-hash2>

Wem diese Information noch zu umfangreich ist, der kann dann noch auf --shortstat zurückgreifen. So erhält man eine grobe Zusammenfassung der Änderungen, ohne genaue Angabe der Dateien.

git diff --shortstat <commit-hash1> <commit-hash2>

Anmerkung:
Wenn man die Informationen maschinell weiter auswerten möchte, dann sollte man den Trigger --numstat verwenden. Hier erhält man die Infos nämlich so formatiert, dass man alles in einem Skript weiter verarbeiten kann.

git diff --numstat <commit-hash1> <commit-hash2>

1 Kommentar

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.