Ich habe mit der Verwendung von Mercurial zur Versionskontrolle meiner Drupal-Projektquelldateien begonnen (ich bin VCS- und Mercurial-Neuling). Die Datenbank ist jedoch immer noch "versionskontrolliert" und verwendet ein Verzeichnis mit veralteten .sql.gz-Dateien.Verwenden von Mercurial-Hooks zum Erstellen/Laden von Datenbankabzügen für die Versionsverwaltung
Was ich möchte ist eine einzelne Datenbank-Dump-Datei irgendwo in meinem Repository, die mit einem aktuellen Dump überschrieben werden würde, wenn die Datenbank ändert, und in die Datenbank importiert, wenn ich auf eine andere Version Rollback.
Ich habe es manuell, und es hat funktioniert. Aber was ich wirklich möchte, ist etwas, das das Dumping/Laden automatisch bei jedem Commit/Update durchführt. Ich würde wirklich bevorzugen, dass es in Mercurial einhaken würde, als etwas Äußerliches wie ein Makefile zu sein, das zuerst die Datenbank ablegt und dann festlegt, da ich gerne mit den Tools von TortoiseHg arbeite und kein weiteres Skript ausführen möchte.
Nun scheint es, dass etwas wie ein mysql .... < dumpfile.sql
auf einem update
Hook eine einfache Möglichkeit wäre, den Datenbank-Dump nach jedem Update zu laden. Aber was ist mit dem automatischen Dumping?
Es gab eine similar question über SVN Pre-Commit Hook, und die akzeptierte Antwort war, dass es wahrscheinlich eine schlechte Idee ist. Gilt es für Mercurial? Vielleicht würde ein anderer Haken (prechangegroup
?) Funktionieren?
EDIT:
Ich möchte darauf hinweisen, dass ich es selbst bin mit, auf meinem lokalen Rechner. Es sollte nicht über einen einzelnen Benutzer hinaus skalieren.
Großartig! Es funktioniert über hg commit einfach gut. Aber ... wenn ich turtoisehg benutze, muss ich zweimal committen (einmal für die Quelldateien und noch einmal für den neu erstellten Datenbank-Dump) ... Würdest du zufällig wissen, wie man das schafft? –
Es bedeutet, dass THG die Dateien auf Dateien beschränkt, von denen angenommen wird, dass sie geändert wurden. Ich kenne THG nicht gut genug, um das zu umgehen (fragen Sie vielleicht in der THG-Mailing-Liste). – tonfa
Danke trotzdem. Ich kann höchstens die Befehlszeile für Commits verwenden. Es ist nicht so schlecht. –