Es ist praktisch, wenn Sie die DEVELOPMENT-Version der Anwendung auf Ihrem lokalen Rechner haben und diese auf dem STAGE-Server zum Testen bereitstellen können (optional) und dann auf dem PRODUCTION-Server bereitstellen. Sie können dies relativ einfach tun, wenn Code und Daten im Projekt feinfühlig sind (z. B. wenn wir den gesamten Code und die Einstellungen in Projektdateien und Daten in der Datenbank speichern).Was ist die beste Vorgehensweise beim Einsatz von MODX?
MODX speichert Vorlagen, Snippets usw. in der Datenbank. Ja, wir können diesen Code in statische Dateien verschieben und dann können wir das Versionskontrollsystem zum Verfolgen von Änderungen dieser Artikel verwenden. Aber diese haben auch Repräsentationszeilen in der Datenbank. Das bedeutet, dass wir die Datenbank wie zuvor aktualisieren müssen, wenn wir einige Elemente hinzugefügt oder entfernt haben.
Sieht so aus, als könnten wir auch Probleme bekommen, wenn wir Dateien von Erweiterungen kopiert haben, anstatt die Installation durch den Paketmanager zu machen (da Erweiterungen oft eigene Tabellen in DB haben).
Ein anderes Problem ist, dass Anwendungen auf DEV und PROD verschiedene Einstellungen in Dateien (Configs) und Datenbank (Benutzerkonten, z. B.) gespeichert haben.
Ich sehe immer noch nicht den klaren Weg, um iterative DEV-STAGE-PROD-Entwicklungszyklus zu organisieren. Also, meine Fragen sind:
- Welche Dateien und Datenbanktabellen sollte (oder muss) ich beim Deployen kopieren?
- Was ist der Modus (ersetzen, ignorieren) Ich sollte das tun?
- Was ist der einfachste und schnellste Weg, das zu tun?
Meine größte Sorge hier ist mit der Datenbank zu tun haben.
P.S. Ich spreche von "Revolution" Version von MODX, wenn es darauf ankommt.
Ich meine den Weg, nur einige Änderungen nicht das ganze Projekt zu implementieren. In diesem Fall hat der Entwickler eine große DB auf einer Produktionsseite und eine kleine Test-DB auf einer lokalen Maschine. Also welcher Teil der Datenbank muss kopiert werden und was ist der beste Weg? Was ist mit einem Ressourcen-ID-Konflikt, wenn Sie eine neue Ressource auf DEV erstellen und eine ID hat, die bereits auf PROD belegt ist? –