Text Diff Checker

Vergleiche zwei Texte oder Code-Schnipsel Zeile für Zeile. Hinzugefügte, entfernte und geänderte Zeilen werden hervorgehoben, bis hin zu den Wörtern, die sich unterscheiden.

Läuft im BrowserOhne AnmeldungKein Upload

Füge Text in beide Felder ein, um die Unterschiede zu sehen.

Anleitung: Text Diff Checker

  1. Füge links den Originaltext und rechts den geänderten Text ein oder öffne zwei Dateien.
  2. Der Vergleich aktualisiert sich beim Tippen. Wähle die Ansicht Nebeneinander oder Unified.
  3. Aktiviere Leerraum ignorieren, Groß-/Kleinschreibung ignorieren oder Leerzeilen ignorieren, um Rauschen wie neue Einrückungen auszublenden.
  4. Mit Unverändertes ausblenden konzentrierst du dich auf die Änderungen, jeweils mit drei Zeilen Kontext.
  5. Klicke auf Als Patch kopieren oder .diff herunterladen, um ein Standard-Unified-Diff zu erhalten, das du mit git apply oder patch anwenden kannst.

So funktioniert dieser Diff Checker

Das Tool teilt beide Eingaben in Zeilen auf und führt den Myers-Diff-Algorithmus aus, denselben O(ND)-Algorithmus, den git diff und GNU diff verwenden. Er findet die kürzeste Folge von Einfügungen und Löschungen, die das Original in den geänderten Text überführt, sodass das Ergebnis möglichst wenige geänderte Zeilen zeigt. Identische Zeilen am Anfang und Ende werden vorab übersprungen, wodurch Vergleiche von Dateien mit Tausenden Zeilen nahezu sofort fertig sind.

Stehen eine entfernte und eine hinzugefügte Zeile direkt nebeneinander, werden sie als geänderte Zeile gepaart und noch einmal Wort für Wort verglichen. Die tatsächlich geänderten Wörter werden stärker hervorgehoben, sodass eine umbenannte Variable oder eine geänderte Zahl in einer langen Zeile sofort auffällt.

Ansicht nebeneinander vs. Unified

Nebeneinander zeigt das Original links und die neue Version rechts, jeweils mit Zeilennummern. Diese Ansicht eignet sich am besten, um Fließtext, Konfigurationsdateien und kleine Codeänderungen zu prüfen. Die Unified-Ansicht verschränkt entfernte (-) und hinzugefügte (+) Zeilen in einer Spalte, das Format von Code-Review-Tools und Patch-Dateien.

Unified-Diff-Format (Patch)

Der exportierte Patch folgt dem Format von diff -u: ein ---/+++-Header, danach Hunks, die mit @@ -l,s +l,s @@ beginnen, wobei l die erste Zeilennummer und s die Anzahl der Zeilen des Hunks in jeder Datei ist. Jeder Hunk enthält drei Zeilen unveränderten Kontext, sodass er mit patch -p0 oder git apply angewendet werden kann, selbst wenn sich Zeilen in der Nähe verschoben haben.

Wann die Ignorieren-Optionen sinnvoll sind

  • Leerraum ignorieren behandelt Zeilen als gleich, die sich nur in Leerzeichen oder Tabs unterscheiden. Nützlich nach dem Neueinrücken von Code oder dem Umstellen von Tabs auf Leerzeichen.
  • Groß-/Kleinschreibung ignorieren ist praktisch für SQL, HTML und Logdateien, bei denen die Schreibweise keine Rolle spielt.
  • Leerzeilen ignorieren blendet Zeilen aus, die nur als Abstand hinzugefügt oder entfernt wurden.

Häufig gestellte Fragen

Wird mein Text irgendwohin hochgeladen?
Nein. Der Vergleich läuft vollständig per JavaScript in deinem Browser. Nichts, was du einfügst, wird an einen Server gesendet, du kannst also bedenkenlos privaten Code, Verträge oder Konfigurationsdateien vergleichen.
Wie groß dürfen die Texte sein?
Dateien mit Zehntausenden Zeilen werden auf einem normalen Laptop in deutlich unter einer Sekunde verglichen. Da der Aufwand mit der Anzahl der Unterschiede wächst, dauern zwei riesige, völlig verschiedene Dateien am längsten.
Kann ich zwei Dateien vergleichen, statt Text einzufügen?
Ja. Nutze die Schaltflächen Datei öffnen über jedem Feld, um eine lokale Datei zu laden. Die Datei wird von deinem Browser gelesen und nie hochgeladen.
Warum wird eine Zeile als entfernt und hinzugefügt statt als geändert angezeigt?
Zeilen werden nur dann als „geändert“ gepaart, wenn ein Block entfernter Zeilen direkt neben einem Block hinzugefügter Zeilen steht. Haben die beiden Zeilen kaum gemeinsamen Text, entfällt die Hervorhebung auf Wortebene, weil sie unübersichtlicher wäre, als die ganze Zeile als geändert zu zeigen.
Wie vergleiche ich JSON-Objekte?
Verwende das Tool JSON Diff. Es vergleicht die geparste Struktur, sodass Schlüsselreihenfolge und Formatierung keine falschen Unterschiede erzeugen, und listet die genauen Pfade auf, die sich geändert haben.

Ähnliche Tools