Git Diff: Änderungen in Git sichtbar machen
Git Diff erlaubt es Ihnen, Änderungen in Dateien, Branches und Commits miteinander zu vergleichen. So können Sie Fehler schneller entdecken und positive Entwicklungen einfacher nachverfolgen.
- Inklusive Wildcard-SSL-Zertifikat
- Inklusive Domain Lock
- Inklusive 2 GB E-Mail-Postfach
Was ist Git Diff und wie funktioniert es?
Ob Sie für sich an einem kleinen Projekt in Git basteln oder in einem großen Team mit zahlreichen lokalen Repositories arbeiten: Im Laufe der Entwicklung werden Sie viele Änderungen vornehmen und dann von Snapshot zu Snapshot weitergehen. Dabei entstehen unterschiedliche Branches; Commits und Dateien häufen sich an. Wenn Sie nun zwei Datenquellen miteinander vergleichen möchten, um Ihre Änderungen besser nachvollziehen oder überprüfen zu können, greifen Sie auf den Git Command Git Diff zurück. Dieser stellt zwei Stände gegenüber und zeigt Ihnen dann an, wodurch sie sich voneinander unterscheiden.
Das macht Git Diff zu einem wichtigen Werkzeug für die tägliche Arbeit an einem Projekt. Häufig wird der Befehl zusammen mit Git Status und Git Log verwendet. Durch die Analyse behalten Sie nicht nur den Überblick über Ihr Repository, sondern können bei Problemen auch Fehlerquellen im Code schneller identifizieren. Die Syntax von Git Diff ist dabei immer gleich. Der Befehl sieht aus wie folgt:
git diff
Durch Argumente, die Sie hinter dem Befehl einfügen, zeigen Sie Git dann genau, welche Quellen Sie miteinander vergleichen möchten.
Anwendungsbeispiel für Git Diff
Die Funktionsweise von Git Diff lässt sich am besten mit einem Beispiel erklären. Nehmen wir daher an, Sie erstellen ein neues Projekt mit dem Namen „neues_projekt“ und fügen zwei Textdokumente ein. Diese Dokumente nennen Sie erste_farbe.txt und zweite_farbe.txt. Der Inhalt von erste_farbe.txt ist der Satz „Die erste Farbe ist Blau“. Das Dokument zweite_farbe.txt enthält lediglich den Satz „Die zweite Farbe ist Rot“. Geben Sie nun Git Diff ein, passiert zunächst nichts. Das Repository enthält noch keine Änderungen, die verglichen werden könnten. Jetzt verschieben Sie die beiden Dokumente in den Staging-Ordner mit dem Befehl Git Add, den Sie auch auf dem praktischen Git Cheat Sheet zum PDF-Download finden. Der Befehl sieht so aus:
git add erste_farbe.txt zweite_farbe.txt
Mit dem Command Git Status überprüfen Sie nun zunächst, welche Änderungen vorgenommen wurden und damit theoretisch bereitstehen für einen Commit. Angezeigt werden Ihnen die beiden Textdokumente erste_farbe.txt und zweite_farbe.txt.
Nehmen Sie nun eine Änderung am zweiten Dokument vor. Verändern Sie die Aussage „Die zweite Farbe ist Rot“ zu „Die zweite Farbe ist Gelb“. Diese Neuerung können Sie jetzt mit Git Diff sichtbar machen. Die Ausgabe sieht dann so aus:
$ git diff
diff --git a/zweite_farbe.txt b/zweite_farbe.txt
index [index]
--- a/zweite_farbe.txt
+++ b/zweite_farbe.txt
@@ -1 +1 @@
-Die zweite Farbe ist Rot
\ No newline at end of file
+Die zweite Farbe ist Gelb
\ No newline at end of file
Die einzelnen Zeilen erklärt
Da diese Ausgabe ein wenig unübersichtlich ist, erklären wir Ihnen nun, was es mit den einzelnen Zeilen auf sich hat.
- diff --git a/zweite_farbe.txt b/zweite_farbe.txt: Hier wird Ihnen angezeigt, welche Eingabequellen mit Git Diff verglichen wurden. Version a ist dabei die ursprüngliche Version, b zeigt die veränderte Version an.
- index: In der Zeile index werden Ihnen die Metadaten angezeigt. Diese sind allerdings im Normalfall für Ihre Zwecke nicht von Interesse.
- --- a/zweite_farbe.txt: Git Diff weist der ursprünglichen Eingabequelle die drei Minuszeichen als Symbol zu, damit Sie die Änderungen nachvollziehen können.
- +++ b/zweite_farbe.txt: Passend dazu erhält die neue Version das Pluszeichen als Symbol.
- @@ -1 +1 @@: Dies ist der Blockheader, der die Änderungen zusammenfasst. Da in diesem Beispiel lediglich eine Änderung in einer Zeile vorgenommen wurde, ist der Header in diesem Fall sehr kurz. Er besagt, dass in der ersten Zeile etwas verändert wurde. Würden Sie mehrere Zeilen formulieren und z. B. ein Wort in der fünften Zeile austauschen, könnte Git das hier bereits vermerken.
- Verbleibende Zeilen: Die restlichen Zeilen zeigen nun die genauen Änderungen an. Wieder ist der Inhalt der ursprünglichen Version („-Die zweite Farbe ist Rot“) mit einem Minus gekennzeichnet und der Inhalt der geänderten Version („+Die zweite Farbe ist Gelb“) mit einem Plus.
Andere Vergleiche mit Git Diff
Sie können mit Git Diff viele verschiedene Vergleiche durchführen. Dies sind die wichtigsten:
git diff HEAD
Mit diesem Befehl vergleichen Sie Änderungen im Arbeitsverzeichnis mit dem Index:
git diff <branch_1> <branch_2></branch_2></branch_1>
Mit diesem Befehl vergleichen Sie die Commits von branch_1 mit denen von branch_2 – die Reihenfolge der beiden Branches wird dabei von Git Diff berücksichtigt:
git diff <commit_id> <commit_id></commit_id></commit_id>
Dieser Command vergleicht die Änderungen zwischen zwei Commits. Dafür müssen Sie mit Git Log zunächst die ID der entsprechenden Commits abfragen.
Jetzt kostenlos austesten! Mit Deploy Now von IONOS verwalten Sie all Ihre Projekte über ein Dashboard und profitieren von vielen nützlichen Features! Im ersten Monat sind dabei bis zu drei Starter-Projekte inklusive.