ekkes corner - ekkes ecke
ekkes corner - ekkes ecke

Comparing Files And Folders After Codegeneration
Mittwoch, 10. Dezember 2008
Auch wenn die Möglichkeiten innerhalb von Eclipse sehr gut sind, wenn es darum geht, Dateien umzubennen oder Dateien zu vergleichen, so benötige ich auch externe Tools:
Vor einiger Zeit hatte ich beschrieben, wie man unter OSX mit dem NameChanger (Freeware) auf einfache Weise Dateien umbenennen kann, die z.B. nicht wie Eclipse Bundles mit name_version benannt sind.
Für die Erstellung von Locations meiner Target Plattformen benötige ich ein Tool, das es mir erlaubt eindeutige Sets von Dateien (Bundles) zu erzeugen. In meinen Blogeintrag „Avoid Duplicate Bundles“ habe ich den Einsatz von FileMerge (unter OSX Bestandteil der XCode Tools) beschrieben.
Jetzt war ich auf der Suche nach einem intelligenten Tool, das es mir erlaubt festzustellen, ob generierter Code identisch zu einer älteren Version ist. Dabei handelt es sich um generierten Code, der in keinem Sourcecode Repository ist, da er komplett generiert wird. Vor der Generierung werden die entsprechenden Sourcecode - Verzeichnisse gelöscht, daher gibt es auch keine lokale History in Eclipse.
Während des Testens des 4.3.1RC2 von openArchitectureWare hat es mich interessiert zu wissen, ob der generierte Code identisch ist zur Version 4.3.0.
Zu beachten ist, dass es einige erlaubte Unterschiede gibt, z.B:
* generation started at: 9. Dezember 2008 08:04:13 CET
ist identisch zu Zeilen mit einem anderen Generierungsdatum. FileMerge von OSX war keine grosse Hilfe, da es solche Dateien als unterschiedlich gemeldet hat.
Nächster Versuch: Compare Folders erlaubt mir, die Grösse der Dateien festzustellen und ob Dateien hinzugefügt oder entfernt wurden.

Aber ich möchte es genauer wissen und habe DeltaWalker gefunden, das all das ermöglicht, was ich benötige und das beste ist:
DeltaWalker ist eine Eclipse RCP Anwendung :-)
...und verfügbar für OSX, Windows, Linux. Und jetzt war es ganz einfach, festzustellen, ob der generierte Code identisch ist:
Einen Datei - Filter erzeugen, der alle Dateien als identisch ansieht, wo es nur Differenzen in der Codezteile mit dem Generierungsdatum gibt:

Einen Ordner - Filter erzeugen, der die OSX-spezifischen .DS_Store Dateien unterdrückt:

Dann die Verzeichnisse vergleichen:

Alles identisch :-)
Glückwunsch openArchitectureWare

- keine Unterschiede zwischen 4.3.0 und 4.3.1RC2 beim Generieren festgestellt.
Ohne den Datei - Filter listet DeltaWalker die Unterschiede wie folgt auf:

...ich vermute, dass DeltaWalker mir noch oft gute Dienste erweisen wird.