Suche…


Syntax

  • Git Log [<Optionen>] [<Revisionsbereich>] [[-] <Pfad>]
  • git log --pretty = kurz | git shortlog [<options>]
  • git shortlog [<Optionen>] [<Revisionsbereich>] [[-] <Pfad>]

Parameter

Parameter Einzelheiten
-n , --numbered Sortieren Sie die Ausgabe nach der Anzahl der Commits pro Autor anstelle der alphabetischen Reihenfolge
-s , --summary Geben Sie nur eine Commit-Count-Zusammenfassung an
-e , --email Zeigt die E-Mail-Adresse jedes Autors an
--format [= <format>] Verwenden Sie anstelle des Festschreibungsbetreffs andere Informationen, um jede Festschreibung zu beschreiben. <format> kann eine beliebige Zeichenfolge sein, die von der Option --format von git log akzeptiert wird.
-w [<width> [, <indent1> [, <indent2>]]] Zeilenumbruch der Ausgabe, indem jede Zeile in width umbrochen wird. Die erste Zeile jedes Eintrags wird durch indent1 Anzahl der Leerzeichen von indent1 eingerückt, und die nachfolgenden Zeilen werden durch Leerzeichen von indent2 eingerückt.
<Revisionsbereich> Nur Commits im angegebenen Revisionsbereich anzeigen. Der gesamte Verlauf wird bis zum aktuellen Commit voreingestellt.
[ -- ] <Pfad> Nur Commits anzeigen, die erklären, wie der path der Dateien gefunden wurde. Für Pfade muss möglicherweise ein "-" vorangestellt werden, um sie von Optionen oder dem Revisionsbereich zu trennen.

Commits pro Entwickler

Git- shortlog wird verwendet, um die Ausgaben des Git-Protokolls zusammenzufassen und die Commits nach Autor zu gruppieren.

Standardmäßig werden alle --summary angezeigt, mit dem Argument --summary oder -s die Nachrichten jedoch --summary und eine Liste der Autoren mit ihrer Gesamtzahl der Commits --summary .

--numbered oder -n ändert die Reihenfolge von alphabetisch (aufsteigend nach Autor) in absteigende Anzahl von Commits.

git shortlog -sn        #Names and Number of commits

git shortlog -sne       #Names along with their email ids and the Number of commits

oder

git log --pretty=format:%ae \
| gawk -- '{ ++c[$0]; } END { for(cc in c) printf "%5d %s\n",c[cc],cc; }'

Hinweis: Zusagen derselben Person können nicht in Gruppen zusammengefasst werden, deren Name und / oder E-Mail-Adresse anders geschrieben wurde. Zum Beispiel werden John Doe und Johnny Doe in der Liste separat angezeigt. Um dieses .mailmap zu beheben, beziehen Sie sich auf die .mailmap Funktion.

Festschreiben pro Datum

git log --pretty=format:"%ai" | awk '{print " : "$1}' | sort -r | uniq -c

Gesamtanzahl der Commits in einer Zweigstelle

git log  --pretty=oneline |wc -l

Auflistung jedes Zweigs und des Datums der letzten Revision

for k in `git branch -a | sed s/^..//`; do echo -e `git log -1 --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" $k --`\\t"$k";done | sort

Codezeilen pro Entwickler

git ls-tree -r HEAD | sed -Ee 's/^.{53}//' | \
while read filename; do file "$filename"; done | \
grep -E ': .*text' | sed -E -e 's/: .*//' | \
while read filename; do git blame --line-porcelain "$filename"; done | \
sed -n 's/^author //p' | \
sort | uniq -c | sort -rn

Alle Commits im hübschen Format auflisten

git log --pretty=format:"%Cgreen%ci %Cblue%cn  %Cgreen%cr%Creset %s"

Dies gibt einen schönen Überblick über alle Commits (1 pro Zeile) mit Datum, Benutzer und Commit-Nachricht.

Die Option --pretty hat viele Platzhalter, die jeweils mit % . Alle Optionen finden Sie hier

Alle lokalen Git-Repositories auf dem Computer suchen

Um alle Standorte des git-Repositorys auf Ihrem Computer aufzulisten, können Sie Folgendes ausführen

find $HOME -type d -name ".git"

Vorausgesetzt, Sie haben locate , sollte dies viel schneller sein:

locate .git |grep git$

Wenn Sie mlocate gnu locate oder mlocate , werden nur die git-Verzeichnisse ausgewählt:

locate -ber \\.git$

Zeigt die Gesamtzahl der Commits pro Autor an

Um die Gesamtzahl der Commits zu erhalten, die jeder Entwickler oder Mitwirkende für ein Repository abgegeben hat, können Sie einfach das git shortlog :

git shortlog -s

welche die Namen und die Anzahl der Commits des Autors enthält.

Wenn Sie die Ergebnisse für alle Zweige berechnen möchten, fügen --all dem Befehl --all hinzu:

git shortlog -s --all


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow