Ich habe Probleme, alle Probleme mit Software Configuration Management auf einem CMS (speziell Joomla!) Zu tun. Ich schreibe natürlich benutzerdefinierte Vorlagen, aber auch benutzerdefinierte Module und Komponenten. Diese Websites und Apps sind für Kunden, nicht in-house.SCM für CMS
Ich möchte tatsächlich die Konfiguration der Website, nicht nur den Code seiner Vorlagen und Komponenten, Version, weil ich will, dass es bereit sein, für Korrekturen zu rampen oder zu jemand anderem zu übertragen, so schnell wie möglich. Im Moment bedeutet das, dass man einen vollen Joomla! Installation für jede Site in SVN, einschließlich der installierten Versionen von Komponenten und Vorlagen, und Speichern der tatsächlichen Datenbankexporte. Für Komponenten behalte ich auch die "gepackte" Version des Codes (siehe unten). Ich kümmere mich normalerweise nicht um die Vorlagen, da Sie sie einfach in Joomla! installieren und es funktioniert.
Das Problem mit dieser Konfiguration, über die ich derzeit debattiere, liegt in der Entwicklung benutzerdefinierter Komponenten. In Joomla! (und die meisten anderen CMS) -Erweiterungen werden in der Regel mit einem Web-Installationsprogramm bereitgestellt. Sie können (zumindest anfangs) die Dateien nicht einfach in einen bestimmten Ordner verschieben, da DB-Änderungen erforderlich sind. Der Joomla! Das Installationssystem bietet DB- und Dateimigration mit Hooks zum Installieren und Deinstallieren, so dass es ein ziemlich vernünftiges System für die Bereitstellung ist.
Gerade jetzt, ich entweder: 1) arbeiten direkt auf die installierten Komponenten, Hinzufügen und Dateien zu ändern und dann manuell in die verpackte Version der Komponente zu kopieren, oder 2) arbeiten auf dem verpackten Komponente und verwenden Sie das Installationsprogramm um die Ergebnisse tatsächlich zu sehen. Diese Option dauert normalerweise nur zu lange, hat aber den Vorteil, dass der Code "releasefähig" bleibt, insbesondere im Hinblick auf DB-Migrationen.
In beiden Fällen werden die Änderungen vor dem Einchecken in beide Versionen der Dateien dupliziert, und die Duplizierung scheint mir ein Geruch zu sein.
Also, tut jemand anderes das? Gibt es bessere Möglichkeiten?
Ich schätze diese Antwort.Mein Problem ist jetzt die Details des Build-Schritts für Joomla. Mehr Fragen! – Jerph