17. Januar 2011

Versionierung von Masken + Sourcecodes vergleichen

Sourcecodes unterschiedlicher Maskenversionen miteinander zu vergleichen ist bei der Entwicklung und Wartung von Forms-Applikationen sehr wichtig. Oracle Forms unterstützt dies nicht nativ. Deswegen benötigt man eine Vorgehensweise, in der man entweder alles selber macht oder eine Versionierungs-Software nutzt.

Manuelle Versionierung

Jede Maskenversion wird in einem eigenen Ordner unter dem Maskennamen + Versionsnummer gespeichert. Z.B. emp_27.fmb, emp_28.fmb, ... In diesem Beispiel "emp" + "_27" + ".fmb".

Parallel zu jeder Version wird noch eine Textversion des FMB's erstellt, emp_27.txt, emp_28.txt usw. Die Textversion erzeugt man in Forms über Datei-Verwaltung-Objektlistenbericht.

Differenzen zwischen zwei Versionen kann man sich nun ganz einfach mit Tools wie z.B. Beyond Compare anschauen, meinem Lieblingswerkzeug für Diffs.



Versionierung mit Subversion, Git oder anderen VCS

Der professionelle Weg ist die Nutzung einer Versionskontroll-Software, z.B. Subversion als Repository und Tortoise als Frontend. Hier haben wir aber das Problem, dass das Speichern von binären FMB's in Subversion das eigentliche Problem nicht löst. Unterschiede zweier Binärdateien helfen einem nicht weiter, wenn man Software-Unterschiede finden möchte. Somit könnte man parallel wieder eine Textversion des FMB's speichern beim Check-in ins Repository.

Möchten wir nun die Differenzen zwischen zwei Versionen sehen, können wir die eingebauten Differenz-Viewer der Tools nutzen. Hier z.B. der Tortoise-Merge-Viewer:


Viel Spass beim Versionieren
Gerd

Keine Kommentare: