GEC1
Begriff · bild

Diff

Die Gegenüberstellung zweier Stände, Zeile für Zeile: was weggefallen ist und was dazukam. Vor dem Commit gelesen, zeigt der Diff, was tatsächlich gespeichert wird.

Kurz

Ein Diff zeigt, was sich zwischen zwei Ständen geändert hat. Weggefallene Zeilen sind mit - markiert, neue mit +. Unveränderte Zeilen drumherum geben Zusammenhang.

-    float tempo = 3f;
+    float tempo = 5f;

Hier wurde eine Zahl geändert. Git sieht das als: alte Zeile weg, neue Zeile dazu.

Genauer

Der Diff ist das wichtigste Werkzeug, um Änderungen zu prüfen, die man nicht selbst getippt hat. Bevor die Änderung eines Agenten committet wird: Diff lesen. Stimmen die Dateien? Ist etwas dabei, worum niemand gebeten hat? Lässt sich jede Zeile erklären?

Was Diffs gut zeigen und was nicht:

Dateiim Diff
Skripte (.cs)gut lesbar
Szenen (.unity), Prefabs (.prefab)lesbar, aber mühsam: Unity speichert sie als Text (YAML) mit vielen Kennungen
Bilder, Sounds, 3D-Modellenur „Datei geändert“, kein Inhalt

Eine verschobene Kiste in der Szene erscheint zum Beispiel als geänderte Zeile mit m_LocalPosition. Das reicht, um zu sehen, dass sich etwas bewegt hat, und um ungewollte Änderungen zu bemerken.

In GitHub Desktop sehen

  • Reiter Changes: links eine Datei auswählen, rechts steht ihr Diff gegenüber dem letzten Commit.
  • Reiter History: einen Commit auswählen, dann zeigt GitHub Desktop, was dieser Commit geändert hat.
  • Im Terminal: git diff zeigt alle noch nicht gespeicherten Änderungen.

Weiterlesen