ABDiff-Hilfe

Text-Merge

Ein Text-Merge kombiniert Änderungen aus zwei Versionen einer Datei zu einem einzigen bearbeitbaren Ergebnis. Ein Konflikt tritt auf, wenn zwei Änderungen nicht miteinander vereinbar sind und eine Entscheidung erforderlich ist.

Layout

Dieser Bildschirm zeigt drei Versionen derselben Datei.

Basis

Es gibt außerdem eine vierte Version: die Basis. Das ist die ursprüngliche Version, von der beide Seiten ausgegangen sind. Dies entspricht dem Drei-Wege-Merge-Modell von Git:

Local → Base ← Remote
          ↓
        Result

In ABDiff kann der mittlere Bereich zwischen Ergebnis und Basis umschalten, damit Sie besser verstehen, was sich geändert hat.

Konflikt

Ein Konflikt tritt auf, wenn beide Seiten dieselben Zeilen unterschiedlich ändern. Zum Beispiel war der ursprüngliche Wert „blue“, jetzt sagt eine Seite „green“ und die andere „red“. Git kann nicht bestimmen, welche Änderung korrekt ist, daher ist eine manuelle Auflösung erforderlich.

Unvereinbare Änderungen

Das passiert, wenn zwei Personen dieselben Zeilen gleichzeitig bearbeiten. Wenn sich die Änderungen nicht überschneiden, führt Git sie automatisch zusammen. Wenn sie sich überschneiden, müssen Sie den Konflikt manuell auflösen.

Wenn Sie Git konfiguriert haben, startet ABDiff, sobald Git einen Konflikt findet. Der Ergebnisbereich bleibt ungelöst, und Ihre Aufgabe ist es, seinen Inhalt festzulegen. Sie haben drei Möglichkeiten:

Einen Konflikt auflösen

Um ein Ergebnis zu übernehmen, klicken Sie mit der rechten Maustaste auf einen Konfliktblock und wählen Sie Unsere Version übernehmen oder Deren Version übernehmen.

Klicken Sie mit der rechten Maustaste auf eine beliebige Zeile, um die verfügbaren Aktionen zu sehen

So erstellen Sie ein eigenes Ergebnis:

Tipps:

Abschließen

Wenn Sie fertig sind, speichern Sie die Datei (Datei ▸ Speichern oder ⌘S). Damit teilt Git mit, dass der Konflikt gelöst wurde.

Oder schließen Sie die Datei ohne zu speichern, wenn Sie den Konflikt nicht auflösen möchten.

Bearbeiten und Navigation

Aktion Abkürzung
Vorherige / nächste Zeile ↑ / ↓
Vorheriger / nächster Bereich ← / →
Zur ersten / letzten Zeile springen ⌘↑ / ⌘↓
Vorherige Änderung / nächste Änderung ⌥↑ / ⌥↓
Vorheriger / nächster Hunk ⌥↑ / ⌥↓
Zu einem anderen Bereich wechseln

Kopieren

Aktion Abkürzung
Nach rechts kopieren ⌘→
Nach links kopieren ⌘←
Auswahl erweitern ⇧↑ / ⇧↓
Unsere Version übernehmen ⇧⌘→
Deren Version übernehmen ⇧⌘←

Eine ausgewählte Zeile wird mit einem grauen Rechteck angezeigt. Ein Hunk ist ein zusammenhängender Konflikt-/Änderungsblock. Kopieraktionen sind nur aktiviert, wenn sie den Bereich Ergebnis verändern würden und wenn die Auswahl auf einer echten Zeile liegt. Ein Umschalt-Klick auf eine Zeile erweitert außerdem die aktuelle Auswahl innerhalb desselben Bereichs.

Änderungen kopieren:

Alle Kopieraktionen können mit ⌘Z rückgängig gemacht werden.

Bearbeiten

Aktion Abkürzung
Bearbeitung der ausgewählten Ergebniszeile starten Return
Bearbeitung einer Ergebniszeile direkt starten Zeile doppelklicken
Bestätigen und zur nächsten bearbeitbaren Zeile wechseln Return (während der Bearbeitung)
Bestätigen und Bearbeitungsmodus beenden Command-Return
Aktuellen Zeilenpuffer verwerfen und Bearbeitungsmodus beenden Esc oder Command-.

Die Bearbeitung kann auch per Doppelklick auf eine Zeile gestartet werden. Alle Bearbeitungsaktionen können mit ⌘Z rückgängig gemacht werden.

Ansichtsoptionen

Text-Merge bietet Optionen, die ändern, wie der Vergleich berechnet oder angezeigt wird. Diese Optionen sind im Optionsmenü verfügbar.

Diese Einstellungen beeinflussen Abgleich und Visualisierung; sie bearbeiten Dateien nicht direkt.

Verwandte Themen