Git Log: Die Commits eines Projekts auflisten und durchsuchen

Git Log gibt Ihnen die Möglichkeit, alle Commits eines Projekts anzuzeigen und zu filtern. Durch verschiedene Spezifikationen erzielen Sie dabei noch bessere Ergebnisse.

Mehr als nur eine Domain!

Hier finden Sie Ihre perfekte Domain - z.B. .de Domain + persönlicher Berater

E-Mail-Postfach
24/7 Support
Wildcard SSL

Was ist Git Log?

Der Befehl Git Commit steht in jedem Git-Tutorial weit am Anfang, schließlich sorgt er dafür, dass Snapshots eines aktuellen Stands erstellt und Änderungen gespeichert werden können. Gerade bei umfangreichen Projekten, die unter Umständen noch von größeren Teams bearbeitet werden, kommen dabei zahlreiche Commits zustande. Diese History kann daher ziemlich unübersichtlich werden. Der Git-Command Git Log ist somit ein wichtiges Werkzeug für die Arbeit mit dem Versionskontrollsystem. Er erlaubt es Ihnen nämlich, Commits aufzulisten, zu filtern und nach bestimmten Änderungen zu durchsuchen. Während Git Status das Arbeitsverzeichnis durchforstet, konzentriert sich Git Log nur auf durchgeführte Commits.

Syntax von Git Log

Die grundsätzliche Syntax von Git Log ist sehr einfach. Ohne weitere Spezifikationen listet Ihnen der Befehl sämtliche Commits Ihres Projekts in umgekehrter chronologischer Reihenfolge auf. Vom aktuellsten Commit können Sie dann Schritt für Schritt zu den vorherigen Snapshots scrollen. Dabei sind u. a. Datum sowie Name und E-Mail-Adresse des jeweiligen Nutzers oder der Nutzerin aufgelistet.

git log

Diese Funktion ist zwar grundsätzlich gut, um einen generellen Überblick zu erhalten. Gerade bei umfangreichen Projekten lohnt es sich allerdings, die Suchkriterien zu verfeinern und dadurch bessere Ergebnisse zu erhalten. Git bietet dafür zahlreiche Möglichkeiten. Die wichtigsten haben wir für Sie in einer Tabelle hinterlegt, die Sie zusätzlich zu Ihrem praktischen Git Cheat Sheet mit PDF-Download nutzen können.

Die wichtigsten Anwendungsmöglichkeiten von Git Log

git log Die Standardvariante listet alle Commits in umgekehrter Reihenfolge auf.
git log -p Mit diesem Befehl werden sämtliche Änderungen detailliert abgebildet.
git log --stat Zeigt eine Statistik der Veränderungen an und listet diese übersichtlich auf.
git log --graph --decorate --oneline Listet die Veränderungen als Graph auf.
git log -n <anzahl> Mit diesem Befehl beschränken Sie die Anzahl der gezeigten Commits.
git log --oneline Fasst jeden Commit in einer einzigen Zeile zusammen und ermöglicht so einen besseren Überblick.
git log --author="name des autors" Zeigt nur Commits eines bestimmten Autors oder einer Autorin.
git log --grep="nachricht" Filtert die Commits anhand ihrer Erklärung.
git log <since>..<until> Zeigt ausschließlich Commits für einen bestimmten Zeitraum an.
git log <datei> Zeigt ausschließlich Commits an, die eine bestimmte Datei beinhalten.
git log --pretty Ändert das Format der Ausgabe nach eigenen Vorgaben.

Filter kombinieren

Sie haben dabei auch die Möglichkeit, verschiedene Argumente zu kombinieren und so eine noch exaktere Suche durchzuführen. Ein einfaches Beispiel für eine sehr spezifische Auflistung mit Git Log sehen Sie im folgenden Code. Mit diesem Befehl lassen Sie sich ausschließlich die Commits des Nutzers Max Mustermann in der Beispieldatei detailliert anzeigen.

git log --author="Max Mustermann" -p beispiel.py

Für ein umfangreicheres Beispiel nehmen wir an, dass die Commits desselben Autors und einer Kollegin nur für den Zeitraum September und Oktober 2021 berücksichtigt werden sollen. Die Commits sollen ausschließlich Änderungen im Textverzeichnis haben und keine Merges sein. Der entsprechende Code sieht dann so aus:

git log --author="Max Mustermann\|Maria Mustermann" --since="2021-09-01" \ --before="2021-10-31" --no-merges --t beispiel.py

Git Log formatieren mit pretty

Mit den pretty-Formaten können Sie die Darstellung bei Git Log einstellen. Folgende Formate sind dabei gängig:

  • oneline: Zeigt alle Informationen in einer Zeile.
  • short: Listet lediglich Commit und Autor oder Autorin und Titel auf.
  • medium: Listet Commit, Verfasser oder Verfasserin, Datum, Titel und Erklärung auf.
  • full: Fügt noch den Committer hinzu.
  • fuller: Listet zusätzlich Datum des Autors und des Committers.
  • email: Zeigt die Informationen im E-Mail-Format.
  • raw: Listet die Commits exakt, wie sie hinterlegt wurden.
  • format: Erlaubt Ihnen eine genaue Formatierung nach eigenen Vorstellungen; so können Sie wichtige Informationen z. B. in Satzform darstellen, Absätze einbauen oder eine bestimmte Reihenfolge der Informationen festlegen.

Git Log und Git Diff

Grundsätzlich ist Git Log ein wichtiges Tool, um den Überblick über Ihr Projekt zu behalten und bestimmte Informationen zu filtern. Der Befehl wird häufig mit Git Diff verwendet und listet dadurch Änderungen zwischen zwei Commits auf. Das zeigt Ihnen nicht nur, wie sich Ihr Projekt im Laufe der Zeit gewandelt hat und welche Teammitglieder bestimmte Aufgaben übernommen haben, sondern eignet sich auch für die Identifikation von Fehlerquellen.

Tipp

Optimierte Workflows, schnelles Setup und maximale Skalierbarkeit! Mit Deploy Now von IONOS deployen Sie Ihre Websites und Apps direkt per GitHub. Profitieren Sie von einem kostenlosen Probemonat und günstigen Tarifen im Anschluss.