Windows-Software erforderlich, um 2 Ordner durch den Baum mit den Blättern zu vergleichen

Eigentlich habe ich 2 Versionen eines Ordners, der mehrere Ordner und Dateien enthält und eine maximale Tiefe von 6 hat. Jetzt bin ich mir nicht sicher, welche Änderungen ich in welcher Datei und in welcher Version vorgenommen habe.

Anwendungsfälle

  1. Ich brauche ein Tool, das alle Dateien auflistet, die nicht übereinstimmen
  2. Wenn Sie dann auf die geänderte Datei klicken, werden die Änderungen angezeigt, ähnlich wie Diff in svn

Ich kann den zweiten Anwendungsfall manuell mit einem eigenständigen Vergleichstool durchführen, aber ich kann keine Software finden, die den ersten Anwendungsfall erfüllt.

Antworten (7)

Ich schlage vor, Sie verwenden Total Commander (falls für Windows).

Zuerst führen Sie einen Verzeichnisvergleich durch, mit dem Sie schnell überprüfen können, welche Dateien/Ordner fehlen/neuer/anders sind:

Geben Sie hier die Bildbeschreibung ein

Mit den Kopier-/Verschiebeoperationen von Dateien können Sie komplette Dateien synchronisieren.

Dann führen Sie einen Dateiinhaltsvergleich durch, und im Bearbeitungsmodus können Sie die verschiedenen Fragmente von Datei zu Datei kopieren:

Geben Sie hier die Bildbeschreibung ein

Sie können die voll funktionsfähige Shareware-Version verwenden oder für 40,- $ / 32,- € eine lebenslange Registrierung erhalten.
Ich lebe in diesem Programm wegen seiner Menge anderer Funktionen.

Von der Total Commander-Webseite: „Total Commander für Windows ist ein Shareware-Programm (Demoversion). Das bedeutet, dass Sie es 30 Tage lang testen können. Nach dem Testen des Programms müssen Sie entweder die Vollversion bestellen oder löschen das Programm von Ihrer Festplatte."
@JerryD Das habe ich übersehen, sorry. Ich habe nur dafür bezahlt.

Ich empfehle KDiff3 , das für Windows, OS X und Unix verfügbar ist. Es ist frei verfügbar (GPLv2). Seine Vergleichsfähigkeiten sind ausgezeichnet! Unten ist ein Screenshot vom Vergleich zweier Linux-Kernel-Quellcodeverzeichnisse:

Screenshot von KDiff3

Die Dateiansicht im Screenshot zeigt sowohl gemeinsame als auch unterschiedliche Dateien an, aber es ist trivial, sie zu filtern und nur Dateien anzuzeigen, die unterschiedlich/nur in einem Verzeichnis vorhanden sind.

Unter Unix, OS X und Windows können Sie Meld verwenden :

  • kostenlos und quelloffen
  • Zwei- und Drei-Wege-Vergleich von Dateien und Verzeichnissen
  • Dateivergleiche werden während der Eingabe aktualisiert
  • Der automatische Zusammenführungsmodus und Aktionen bei Änderungsblöcken erleichtern das Zusammenführen
  • Visualisierungen erleichtern den Vergleich Ihrer Dateien
  • Unterstützt Git, Bazaar, Mercurial, Subversion usw.

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Angenommen Windows

WinMerge ist ein großartiges Diff-Programm und kann genau das tun. WinMerge ist sowohl kostenlos als auch Open Source.

  • Anwendungsfall 1: Einfach die beiden Ordner im Vergleichsdialog auswählen und dann sortieren comparison result(siehe Beispiel-Screenshot)
  • Anwendungsfall 2: Doppelklicken Sie einfach auf eine der Dateien dort, um den Unterschied für diese bestimmte Datei zu sehen - oder wählen Sie zwei Dateien im Vergleichsdialog aus und es werden diese verglichen.Screenie
Leider zeigt WinMerge nicht an, ob ein Ordner Unterschiede enthält oder nicht (rekursiv). Oder zumindest habe ich keine Möglichkeit gefunden, das zu zeigen. Dieses Problem macht die Verwendung von WinMerge für einen "Baum-zu-Blätter"-Vergleich in 6-Ebenen-Hierarchien zu einem Problem.

Unter Linux können Sie Krusader verwenden :

  • kostenlos und quelloffen
  • Listen Sie alle Dateien auf, die nicht übereinstimmen
  • kann Dateien nach Inhalt über externe Diff-Programme wie Kompare, KDiff3 oder xxdiff vergleichen .

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

sieht aus wie "inspiriert" von Total Commander :)

Ich empfehle Total Commander , es hat ein spezielles Subtree-Vergleichstool im Menü Commands> Synchronize Dirs...:

Geben Sie hier die Bildbeschreibung ein

Ich verwende es, um Projekte mit 100.000 Dateien in einem Baum mit 8.000 Verzeichnissen zu vergleichen/synchronisieren.

Kontrollkästchen:

  • Asymmetrisch

    • deaktiviert = linke und rechte Seite sind gleich
    • aktiviert = linke Seite ist Quelle, rechte Seite ist Ziel, damit Dateilöschungen auf der rechten Seite generiert werden können (siehe Zeilen mit rotem X auf Demobild)
  • Unterverzeichnisse - auch Unterverzeichnisse vergleichen

  • Nach Inhalt - Dateien auch nach Inhalt vergleichen (Byte für Byte)

  • Datum ignorieren - Dateien nur nach Name und Größe vergleichen (und nach Inhalt, falls aktiviert)

Andere Kontrollen:

  • Geben Sie hier die Bildbeschreibung ein- Umschalttasten zum Ein-/Ausblenden von Artikelkategorien

  • mittlere Spalte der Hauptliste – Synchronisation jeder Datei kann individuell angepasst werden. Die Schaltfläche „ Synchronisieren “ startet die Synchronisierung basierend auf der in dieser Spalte getroffenen Auswahl.

Beachten Sie, dass sich in meinem Demo-Image im linken Bereich ein ZIP-Archiv befindet.

In der Hauptliste kann jede Zeile einzeln ausgewertet werden:

  • F3- Linke Datei anzeigen

  • Shift+ F3- rechte Datei anzeigen

  • Ctrl+ F3- Führen Sie das zeilenweise Vergleichstool aus (einschließlich Editor). Sein Screenshot könnte in einer anderen Antwort enthalten sein.

Ich hatte ein ähnliches Problem und bin auf diesen Artikel gestoßen, wie man zwei Ordner von einer Windows-Eingabeaufforderung unterscheidet . Dabei wird das Dienstprogramm RoboCopy von Microsoft verwendet, das in Windows Vista und höher enthalten ist. Es funktioniert sowohl mit lokalen Ordnern als auch mit Netzwerk-Dateifreigaben.

Der Befehl lautet:

ROBOCOPY „\FileShare\SourceFolder“ „\FileShare\ComparisonFolder“ /e /l /ns /njs /njh /fp /log:reconcile.txt

Der Artikel schlägt tatsächlich vor, dass Sie auch den Schalter /ndl verwenden , um die Größe der Protokolldatei gering zu halten. JEDOCH warnt er, dass, wenn der Schalter /ndl aktiv ist ...

  • Ordner, die nur auf der Quelle oder dem Ziel vorhanden sind, werden nicht protokolliert, es sei denn, es ist mindestens eine nicht übereinstimmende Datei vorhanden oder eine Quelldatei fehlt auf dem Ziel.
  • Ordner, die nur auf dem Ziel vorhanden sind, werden unabhängig vom Inhalt überhaupt nicht protokolliert.

Beachten Sie, dass alle Dateien und Ordner mit oder ohne Verwendung von /ndl verglichen werden, aber was protokolliert wird, ist das, was sich ändert.

Die Webseite von Microsoft, die die RoboCopy-Syntax und -Optionen erklärt, befindet sich unter: https://technet.microsoft.com/en-us/library/cc733145.aspx