Zusammenführungskonflikte lösen
Ein Konflikt entsteht, wenn beide Zweige dieselben Zeilen geändert haben. Der Resolver von GitTree zeigt die beiden Versionen A und B nebeneinander an: Kreuzen Sie die Zeilen an, die in jedem Konflikt beibehalten werden sollen, überprüfen Sie Output, dann Save und fahren Sie mit der Zusammenführung, dem Rebase oder der Rosinenauswahl fort.
Funktioniert in GitTree Kostenlos: alle lokalen Git-Funktionen, sobald Sie angemeldet sind.
Auf dieser Seite
Bevor Sie beginnen
- Ein Merge, Rebase, Cherry-Pick oder Revert wurde mit Konflikten gestoppt: Das Banner sagt es und zählt sie.
Wo es zu finden ist
- Das Banner über der Grafik: Resolve.
- Im Änderungsfenster werden die in Konflikt stehenden Dateien zuerst aufgelistet; Wählen Sie eines aus, um es zu öffnen.
| Aktion | macOS | Windows und Linux |
|---|---|---|
| Nächste Änderung in der Datei | F7 | F7 |
| Vorherige Änderung in der Datei | ⇧F7 | Shift+F7 |
Schritte
Öffnen Sie die Konfliktdatei
Wählen Sie im Banner Resolve aus. Der Resolver öffnet die erste Konfliktdatei mit Angabe der Anzahl der Konflikte und 0 of 2 conflicts resolved darüber.

Jede Seite benennt ihren Commit und Branch; Die folgende Ausgabe zeigt, was die Datei enthalten wird.GitTree-Schnittstelle mit einem Demonstrations-Repository. Entscheiden Sie jeden Konflikt
Kreuzen Sie für Conflict 1 die Zeilen an, die in A, in B oder in beiden beibehalten werden sollen. Keeps 1 of 1 lines bestätigt Ihre Auswahl; Der Konflikt wird als gelöst markiert, sobald etwas entschieden ist. Take Neither behält keinen davon.
Überprüfen Sie die Ausgabe
Im Bereich Output wird die Datei so angezeigt, wie sie gespeichert wird, mit einem Hinweis auf jeden noch unentschiedenen Konflikt und Go to Conflict, um dorthin zu springen. Verwenden Sie Edit Output, um einen Fix manuell einzugeben, und Show Base, um den gemeinsamen Vorfahren anzuzeigen.
Speichern und fortfahren
Drücken Sie Save, um die Datei zu schreiben und als gelöst zu markieren. Wenn alle Dateien aufgelöst sind, wählen Sie im Banner Continue aus, um den Vorgang abzuschließen.
Erwartetes Ergebnis
Die Zusammenführung (oder der Rebase-Schritt) wird mit Ihrer Auflösung abgeschlossen und das Banner verschwindet.
Schnellere Lösungsmöglichkeiten
- Das Kästchen neben A oder B im Header nimmt jeden Konflikt der Datei von dieser Seite auf.
- Undo Choice und Redo Choice durchlaufen Ihre Entscheidungen, ohne die Datei zu berühren.
- Open in Merge Tool übergibt die Datei an das externe Merge-Tool, das in Ihrer Git-Konfiguration festgelegt ist.
- Wenn
rerereaktiviert ist, verwendet Git wieder, wie Sie denselben Konflikt zuvor gelöst haben. GitTree sagt Reused resolution und lässt Sie es überprüfen.
Wenn etwas schief geht
„Das Ergebnis enthält immer noch … Konfliktmarkierungslinien; es kann nicht gespeichert werden, bis sie entfernt werden.“
Sie haben die Ausgabe manuell bearbeitet und es bleibt eine Zeile wie <<<<<<< oder >>>>>>> übrig. Entfernen Sie es oder entscheiden Sie stattdessen den Konflikt mit den Kästchen.
„Diese Datei wurde auf der Festplatte geändert, während Sie sie auflösten.“
Ein anderes Programm hat in die Datei geschrieben. GitTree behält Ihre früheren Entscheidungen bei: Vergleichen Sie sie jetzt mit der Datei, verwenden Sie sie als Ausgabe oder verwerfen Sie sie.
Fragen
Welche Seite gehört mir?
Während einer Zusammenführung ist A Ihr aktueller Zweig und B der Zweig, der zusammengeführt wird; Jeder Header benennt das Commit und den Branch. Während eines Rebases tauschen sie: A ist der Zweig, auf den Sie rebasieren, B Ihr Commit wird wiederholt.