Verzeichnisse
Beim Vergleich von Verzeichnissen können Sie das Vergleichsergebnis durch Definieren der Option --output-mode=text bzw. --output-mode=xml entweder im Text- oder XML-Format anzeigen. Mit der Option --output-mode können Sie das Format des Vergleichsberichts (XML oder Text) definieren, während Sie mit der Option --output-file den Namen der Berichtsdatei definieren können.
Die Option --output-mode=text wird nicht unterstützt, wenn die verglichenen Verzeichnisse XML-Dateien enthalten und wenn --dir-compare-contents=true. Das Ergebnis des Vergleichs von XML-Dateien kann nur im XML-Format ausgegeben werden. |
Werfen Sie zum besseren Verständnis der Art, wie DiffDog Server Unterschiede zwischen Verzeichnissen anzeigt, einen Blick auf die folgenden zwei Verzeichnisse, die Seite an Seite nebeneinander verglichen werden.
dir1/ |-- documents/ |-- Don Quixote.txt |-- Metamorphosis.txt | dir2/ |-- Don Quixote.txt |-- img1.png |-- Metamorphosis.txt |
dir1 | dir2 |
Wenn die Verzeichnisse mit einem Vergleichstool wie DiffDog (mit dem Schnellvergleich) über eine grafische Benutzeroberfläche verglichen werden, werden die Unterschiede zwischen den beiden Verzeichnissen wie unten gezeigt, dargestellt. Wie Sie in der Abbildung unten sehen, wurde das Unterverzeichnis documents gelöscht und im rechten Verzeichnis wurde die Datei img1.png hinzugefügt. Außerdem weist die Datei Metamorphosis.txt einen anderen Änderungszeitpunkt auf.
DiffDog-Vergleichsbericht
In DiffDog Server können Sie diese beiden Verzeichnisse mit dem folgenden Befehl in einem Schnellvergleich vergleichen:
<executable> diff dir1 dir2 --output-mode=text --output-file=report.txt --dir-compare-sizes=true --dir-compare-mod-times=true |
Anmerkung: | Der obige Vergleich ist auch deshalb ein Schnellvergleich, weil keine Verzeichnisinhalte, sondern nur Größe und Änderungsdatum der Dateien in den beiden Verzeichnissen verglichen wurden. Um einen gründlichen Vergleich, in dem auch der Dateiinhalt berücksichtigt wird, durchzuführen, fügen Sie die Option --dir-compare-contents=true hinzu. |
In dem nach Ausführung des Vergleichs erzeugten Textbericht werden die Unterschiede folgendermaßen angegeben:
< documents/ ! Metamorphosis.txt > img1.png |
DiffDog Server-Vergleichsbericht (Text)
Das Zeichen "<" verweist auf die linke Seite des Vergleichs, während ">" auf die rechte Seite des Vergleichs verweist. Mit dem nachgestellten Schrägstrich wird ein Verzeichnis (im Gegensatz zu einer Datei) gekennzeichnet. Das Zeichen "!" kennzeichnet Unterschiede in der entsprechenden Datei.
Wie bei Dateiberichten sind die Informationen als Anweisungen, wie die beiden Verzeichnisse aneinander angeglichen werden können, zu interpretieren. Die Anweisungen in diesem Beispiel sind folgendermaßen zu verstehen:
1.Füge das Unterverzeichnis documents im linken Verzeichnis hinzu.
2.Kopiere die Datei Metamorphosis.txt entweder aus dem linken in das rechte Verzeichnis oder umgekehrt.
3.Füge die Datei img1.png zum rechten Verzeichnis hinzu.
Anmerkung: | Je nach Richtung der gewünschten Zusammenführung ist "Hinzufügen" durch "Löschen" zu ersetzen. Um die Änderungen in diesem Beispiel von links nach rechts zusammenzuführen, ist die erste Anweisung "Hinzufügen" und die zweite "Löschen". Wenn die Zusammenführung von rechts nach links durchgeführt werden soll, ist die erste Anweisung "Löschen" und die zweite "Hinzufügen". |
XML-Bericht
Wir wollen denselben Vergleich nun nochmals ausführen, doch diesmal das Format der Berichtsdatei von Text in XML ändern. Der Vergleichsbefehl sieht nun folgendermaßen aus:
<executable> diff dir1 dir2 --output-mode=xml --output-file=report.xml --dir-compare-sizes=true --dir-compare-mod-times=true |
Wenn Sie XML als Berichtsformat wählen, wird derselbe Bericht folgendermaßen ausgegeben:
<?xml version="1.0" encoding="UTF-8"?> |
DiffDog Server-Vergleichsbericht (XML)
Das Element diff_info enthält Informationen über verglichene Verzeichnisse (darunter den Vergleichsmodus und den Pfad der verglichenen Dateien). Dieses Element kommt nur einmal vor.
Das Element file_diff kommt in Verzeichnisvergleichsberichten nur einmal vor. Es kann mehrere Instanzen eines der folgenden Child-Elemente enthalten: left_content, changed_content und right_content. Diese entsprechen den Zeichen "<", ">", und "!" in Textberichten und haben dieselbe Bedeutung, wie oben erläutert.