2010-05-23 12 views
39

Ich frage mich, wie Teams, die Websites mit Drupal (oder einem anderen CMS) entwickeln, Versionskontrolle, Subversion, Git oder ähnliches in ihren Workflow integrieren. Sie möchten natürlich, dass Ihre benutzerdefinierten Code- und Designdateien unter Versionskontrolle stehen, aber wenn Sie ein CMS wie Drupal verwenden, besteht ein Großteil der Arbeit darin, Module und Einstellungen zu konfigurieren, die alle in der Datenbank gespeichert sind.Arbeiten mit Versionskontrolle in einem Drupal/CMS Projekt

Also, wenn Sie ein Team von Entwicklern sind, wie arbeiten Sie bei einem Projekt wie diesem zusammen? Die Datenbank in eine Datei zu packen und diese Datei unter Versionskontrolle zu stellen, könnte funktionieren, denke ich, aber wenn die Seite live ist, fügt der Client ständig Inhalte hinzu, was die Synchronisierung etwas problematisch macht.

Ich würde gerne wissen, wie andere dies tun.

Antwort

16

Sie haben Recht, dass dies ein Problem für Drupal ist - die Versionskontrolle funktioniert einwandfrei, bis Sie die Site auf Ihren Client übertragen oder ihn für Benutzer öffnen.

Ihre Frage scheint wie eine spezifischere Version dieser one, die Versionskontrolle im Drupal-Workflow berührt. Sie können dort einige Antworten finden, die helfen.

Für einige Projekte habe ich alle Ansichten in Code exportiert, die diese Funktion des Moduls Ansichten verwenden, und ich habe ein Projekt, in dem alle Blöcke auch exportiert wurden. (Obwohl das eine Entwicklungsübung und keine übliche Sache mit Blöcken war.)

Werfen Sie einen Blick auf die Arbeit, die Development Seed tut, um dieses Problem zu umgehen. Sie führen die Entwicklung der Context, Features und Spaces Module, die zusammenarbeiten, um Konfigurationsdaten in Modulen (außerhalb der DB) zu speichern, so dass es mit dem Code versioniert werden kann.

Es gibt eine Drupal-Gruppe namens , in der die verschiedenen Lösungen diskutiert werden, die für dieses Problem entwickelt werden.

1

Gerade jetzt gibt es eine Menge Bemühungen, etwas zu schaffen, das die Entwickler -> Produktionsschwierigkeiten mit Drupal in Bezug auf die Datenbank behandelt. Features, die Flaminglogos erwähnt, ist eine, aber ich denke, dass ist mehr auf die Erstellung von Stand-alone-Projekten, dh diejenigen, die auf vielen Websites installiert werden würde konzentriert.

Für die einfache Pflege Ihrer Dev- und Prod-Datenbanken würde ich einen Blick auf http://drupal.org/project/deploy und http://drupal.org/project/dbscripts werfen. Sie unterstützen das Synchronisieren und Zusammenführen von db-seitigen drupal-Konfigurationsdaten.

Ich kann nicht garantieren, dass sie für die Prime Time obwohl bereit sind ...

+0

Das Deploy-Modul sieht in dem Screencast, der auf seiner Projektseite verlinkt ist, interessant aus, und ich stimme zu, dass es eine ordentliche Lösung zum Aktualisieren von Inhalten auf einer einzelnen Site ist. – flamingLogos

0

Es gibt eine Menge Aufwand für den Versand der nächsten Version mit Drupal Konfiguration im Code. Das ist der Schlüssel, um es in einem Versionssystem zu haben.

Für jetzt können Sie das Feature-Modul verwenden, mit dem Sie Dinge wie Inhaltstypen, Ansichten usw. zum Code exportieren und dann vergleichen, versionieren und wiederherstellen können, wie Sie benötigen.

Verwandte Themen