Zum Inhalt springen

Drei-Wege-Textmerge und Konfliktansicht

Fügen Sie gemeinsame Basis, Ihre Version und die eingehende Version ein und klicken Sie auf Text zusammenführen. Unabhängige Zeilenänderungen werden vereint; Bearbeitungen derselben Zeilen stehen in Konfliktmarkierungen, die Sie vor dem Kopieren prüfen.

Läuft lokal in deinem Browser
1Common base2Merge text3Merged text

Common baseBASE
Your versionOURS
Incoming versionTHEIRS
Merged text
Conflict details

    Zwei Textfassungen über eine gemeinsame Basis zusammenführen

    Die Werkbank vergleicht drei reine Textblöcke Zeile für Zeile: die gemeinsame Basis, von der beide Fassungen stammen, Ihre Version und die eingehende Version. Änderungen nur einer Seite wandern ins Ergebnis; schreiben beide dieselbe Stelle um, bleiben beide Alternativen in einem Konfliktblock stehen, statt dass eine geraten wird.

    Der zusammengeführte Text steht neben drei Zählern und einer Konfliktliste, die Ausgabezeile und Basiszeilen jedes Konflikts nennt. Der Vergleich läuft in der Seite, der Text verlässt den Browser nicht, und Kopieren oder Herunterladen bringt das Ergebnis in den nächsten Schritt.

    1. Fügen Sie die gemeinsame Basis in das erste Feld ein, Ihre Version in das zweite und die eingehende Version in das dritte. Windows-CRLF und Unix-Zeilenenden werden gelesen, lange Dateien lassen sich unverändert einfügen.
    2. Klicken Sie auf Text zusammenführen. Unabhängige Änderungen sind bereits vereint, jede Überschneidung steht als Block zwischen Konfliktmarkierungen.
    3. Lesen Sie die Zähler unter dem Ergebnis — Konflikte, Geänderte Bereiche und Zeilen — und die Liste Konfliktdetails, die Ausgabezeile und ersetzte Basiszeilen jedes Konflikts nennt.
    4. Lösen Sie jeden Konfliktblock, indem Sie den zusammengeführten Text bearbeiten, oder ändern Sie eine Eingabe und führen Sie erneut zusammen. Leeren räumt die drei Felder, das Ergebnis und die Zähler.
    5. Kopieren Sie den Text oder laden Sie ihn als .txt-Datei herunter. Lassen Sie Nachgestellte Leerzeichen beim Vergleich ignorieren angehakt, solange reine Einrückungsunterschiede nicht als Änderung zählen sollen.

    Was das zusammengeführte Ergebnis enthält und wo das Werkzeug endet

    Wie der Zeilenvergleich arbeitet

    Jede Fassung wird mit der Basis über einen Zeilenvergleich auf Basis der längsten gemeinsamen Teilfolge abgeglichen. Bereiche, die nur eine Seite ändert, kommen von dieser Seite; Bereiche, die beide ändern, werden zu einem einzigen Konfliktblock gebündelt, damit benachbarte Änderungen nicht zwei konkurrierende Markierungen erzeugen. Eine auf beiden Seiten gleiche Änderung, auch das Löschen derselben Zeilen, wird ohne Konflikt zusammengeführt.

    Der Vergleich arbeitet zeilenweise, nicht zeichenweise: Eine umformulierte Zeile gilt als geänderte Zeile, und Markierungen werden als ganze Zeilen eingefügt. Weil beide Fassungen gegen dieselbe Basis verglichen werden, müssen die beiden Bearbeitungswege nichts voneinander wissen.

    Konfliktmarkierungen und die drei Zähler

    Ein Konfliktblock beginnt mit der Zeile <<<<<<< YOUR VERSION, danach folgen Ihre Zeilen, dann ||||||| COMMON BASE mit den ursprünglichen Basiszeilen, der Trenner =======, die eingehenden Zeilen und die Schlusszeile >>>>>>> INCOMING VERSION. Alles außerhalb des Blocks ist bereits zusammengeführt.

    Die Zähler messen Verschiedenes: Konflikte zählt markierte Blöcke, Geänderte Bereiche die geänderten Stellen beider Vergleiche und Zeilen die Zeilen des Ergebnisses. Eine drei Zeilen lange Datei mit Änderungen in zwei verschiedenen Zeilen meldet zwei geänderte Bereiche, null Konflikte und drei Zeilen; dieselbe Änderung in einer Zeile, die beide anfassen, meldet einen Konflikt und neun Zeilen, weil der Block Ihre Zeile, die Basiszeile und die eingehende Zeile zwischen vier Markierungszeilen behält.

    Grenzen, lokale Verarbeitung und Prüfung

    Die Vergleichsmatrix entsteht im Browser, deshalb wird ein Vergleich abgelehnt, sobald die Zeilenzahl der Basis multipliziert mit der Zeilenzahl einer Fassung vier Millionen Zeilenpaare überschreitet. Zwei Fassungen mit 2.000 Zeilen gegen eine Basis mit 2.000 Zeilen laufen in Chrome in etwa einer halben Sekunde; 2.010 Zeilen werden mit einer Meldung abgelehnt, und das vorige Ergebnis wird geleert statt stehen gelassen.

    Das Zusammenführen sendet keine Netzwerkanfrage, das Werkzeug arbeitet also offline und mit Texten, die keinen externen Dienst erreichen dürfen. Das Ergebnis zeigt, wo die Fassungen auseinandergehen, nicht welche recht hat: Lesen Sie jeden Konfliktblock, bevor die Datei in einen Build, eine Konfiguration oder ein Dokument wandert.

    Zuletzt verwendet: