Diff · + hinzugefügt · − entfernt
Texte vergleichen
Der zeilenweise Vergleich von „red, green, blue“ mit „red, yellow, blue“ ergibt 1 hinzugefügte Zeile, 1 entfernte Zeile und 2 unveränderte. Füge zwei Texte ein, um jeden Unterschied zu sehen.
- +1 −1 =2
- @@ -1,3 +1,3 @@
Jede hinzugefügte Zeile ist mit + und jede entfernte mit − markiert, zusätzlich zur Farbe, und die geänderten Zeichen in einer ersetzten Zeile sind hervorgehoben. Kleine Texte werden beim Tippen verglichen; der Text verlässt diesen Tab nie.
Scanned by NortonTM Safe Web
Auf einen Blick
- Preis
- Ohne Kosten
- Konto
- Nicht nötig
- Upload
- Entfällt – beide Texte bleiben in deinem Tab
- Methode
- Längste gemeinsame Teilfolge von Zeilen, geänderte Zeichen hervorgehoben
- Ausgabe
- Farbige und markierte Zeilen oder ein Unified Diff mit 3 Zeilen Kontext
- Größenlimit
- 5,000 Zeilen und 5,000,000 Zeichen pro Text
Ein durchgerechneter Vergleich und die Wirkung der Optionen
Die Tabellen stammen aus demselben Code wie das Tool. Die erste vergleicht zwei Texte mit drei Zeilen; die zweite zeigt, wie die Optionen das Ergebnis für ein Zeilenpaar ändern.
| Markierung | Zeile |
|---|---|
| = | red |
| − | green |
| + | yellow |
| = | blue |
| Einstellung | Hinzugefügte Zeilen | Entfernte Zeilen |
|---|---|---|
| Exakt | 1 | 1 |
| Groß-/Kleinschreibung ignorieren | 1 | 1 |
| Leerraum ignorieren | 1 | 1 |
| Groß-/Kleinschreibung und Leerraum ignorieren | 0 | 0 |
So vergleichst du zwei Texte
Die beiden Texte einfügen
Lege den älteren Text in das Feld „Originaltext“ und den neueren in das Feld „Geänderter Text“. Zwei kurze Beispiele stehen schon darin. „Tauschen“ vertauscht die beiden Felder, „Beide leeren“ leert sie.
Festlegen, was als Unterschied zählt
Setze „Groß-/Kleinschreibung ignorieren“, um „Hello“ und „hello“ als dieselbe Zeile zu behandeln, und „Leerraum ignorieren“, um Leerzeichen am Zeilenende und mehrfache Leerzeichen innerhalb einer Zeile zu ignorieren. „Nur Änderungen anzeigen“ faltet die unveränderten Zeilen weg und behält 3 Zeilen um jede Änderung.
Unterschied lesen oder kopieren
Mit − markierte Zeilen gibt es nur im Original, mit + markierte nur im geänderten Text. Kopiere das Unified Diff, um es in eine Nachricht oder einen Patch einzufügen, oder lade es als .diff-Datei herunter.
Wie der Vergleich funktioniert
Die beiden Texte werden in Zeilen zerlegt, und das Tool findet die längste gemeinsame Teilfolge von Zeilen: die größte Menge an Zeilen, die in beiden Texten in derselben Reihenfolge vorkommen. Jede Zeile außerhalb dieser Menge wird als entfernt (nur im Original) oder hinzugefügt (nur im geänderten Text) gemeldet, sodass das Diff so wenige geänderte Zeilen wie möglich hat. Folgt auf eine entfernte Zeile direkt eine hinzugefügte, werden die Zeichen hervorgehoben, in denen sich die beiden unterscheiden.
Ein Diff arbeitet mit Zeilen, weil Zeilen die Einheit sind, in der sich Code, Konfigurationsdateien und Listen ändern, und ein Zeilenvergleich bei Tausenden von Zeilen schnell bleibt. Eine verschobene Zeile erscheint einmal als entfernt und einmal als hinzugefügt; ein geändertes Wort erscheint als ersetzte Zeile mit hervorgehobenen Zeichen. Zeilenenden werden normalisiert, sodass eine mit Windows-Zeilenumbrüchen gespeicherte Datei mit derselben, mit Unix-Zeilenumbrüchen gespeicherten Datei übereinstimmt. Jeder Text darf bis zu 5,000 Zeilen und 5,000,000 Zeichen haben. Die Unified-Diff-Ausgabe nutzt das gängige Format: einen Kopf mit --- und +++, dann @@-Blöcke mit 3 Zeilen Kontext.
Fragen zum Textvergleich
Wie entscheidet ein Text-Diff, was sich geändert hat?
Es findet die längste gemeinsame Teilfolge von Zeilen, also die meisten Zeilen, die beide Texte in derselben Reihenfolge teilen. Zeilen außerhalb davon werden mit − markiert, wenn nur das Original sie hat, und mit +, wenn nur der geänderte Text sie hat. „red, green, blue“ gegen „red, yellow, blue“ behält red und blue, entfernt green und fügt yellow hinzu.
Warum vergleicht das Tool Zeilen und nicht Wörter?
In Zeilen sind Code, Logs, Listen und Konfigurationsdateien organisiert, und ein zeilenbasiertes Ergebnis ist kurz genug zum Lesen. Bei einer ersetzten Zeile werden die abweichenden Zeichen darin hervorgehoben, sodass eine Ein-Wort-Änderung in einem langen Satz leicht zu erkennen ist.
Was bedeuten die Farben und die Zeichen + und −?
Eine grüne Zeile mit + wurde im geänderten Text hinzugefügt. Eine rote Zeile mit − wurde aus dem Original entfernt. Zeilen ohne Markierung sind in beiden gleich. Die Zeichen werden zusätzlich zu den Farben ausgegeben, sodass das Ergebnis auch lesbar ist, wenn man Rot und Grün nicht unterscheiden kann.
Wie ignoriere ich Unterschiede bei Groß-/Kleinschreibung oder Leerzeichen?
Setze „Groß-/Kleinschreibung ignorieren“, um Zeilen ohne Rücksicht auf Großbuchstaben zu vergleichen, und „Leerraum ignorieren“, um Leerzeichen am Zeilenanfang und -ende zu ignorieren und jede Folge von Leerzeichen innerhalb einer Zeile als ein Leerzeichen zu behandeln. Mit beiden Haken sind „Hello World“ und „hello world“ dieselbe Zeile.
Wie groß dürfen die beiden Texte sein?
Jeder Text darf bis zu 5,000 Zeilen und 5,000,000 Zeichen haben. Ein Text mit 5,000 Zeilen, verglichen mit einer umsortierten Kopie seiner selbst, wird auf einem aktuellen Computer in weit unter einer Sekunde verarbeitet. Ab insgesamt 100,000 Zeichen startet der Vergleich, wenn du auf „Vergleichen“ drückst, statt beim Tippen.
Was ist ein Unified Diff?
Es ist das Textformat, das von diff und Git verwendet wird. Es beginnt mit einer --- und einer +++ Zeile, die die beiden Texte benennen, dann folgt ein Block je Gruppe von Änderungen. Ein Block beginnt mit einem Kopf wie @@ -1,3 +1,3 @@, also 3 Zeilen ab Zeile 1 des Originals und 3 Zeilen ab Zeile 1 des geänderten Textes, und jede Zeile beginnt mit einem Leerzeichen, + oder −.