Mit version control (Git) auf eine MySQL-Datenbank
Ich bin ein WordPress-Designer/- Entwickler, die immer mehr und mehr intensiv mit Versionskontrolle, insbesondere Git, wird zwar verwende ich SVN für einige Projekte. Ich bin derzeit mit Beanstalk für meine remote-repo.
Hinzufügen alle WordPress-Dateien zu meinem repo ist kein problem, wenn ich wollte, ich weiß, ich könnte .gitignore der wp-config-Datei, aber da bin ich der einzige Entwickler, derzeit, und diese Projekte sind closed source, es macht wirklich wenig Sinn.
WordPress stützt sich stark auf die Datenbank, wie jedes CMS hat, um textliche Inhalte und viele Einstellungen je nach spezifischen plugin - /theme-Konfiguration, die ich verwende. Ich Frage mich, was der beste Weg, eine Versionskontrolle für die Datenbank wäre, wenn es überhaupt noch möglich ist. Ich denke, ich könnte einen SQL-dump, aber mein MySQL server läuft auf Windows (zu Lesen als: ich weiß nicht, wie es zu tun), und fügen Sie dann den SQL-dump auf mein repository. Aber wenn ich push etwas Leben, das birgt enorme Sicherheitsrisiken.
Ist es eine anerkannte Praxis, dies zu tun?
Auch, Sie könnten die Datenbank überprüft, in eine
develop
Zweig, und verwenden Sie die Technik, hier ausschließen der Datenbank zusammengeführt werden in master
. Dann nur bereitstellen von master
. In der Theorie, das sollte funktionieren.Ich habe eine schnelle google nach "Wordpress Version Control" und fand diese Liste der WordPress-plugins: wordpress.org/extend/plugins/tags/version-control Würden Sie nützlich sein?
codinghorror.com/blog/2008/02/...
InformationsquelleAutor Zach Russell | 2012-11-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie ein backup Ihrer Datenbank in einem git-repository. Natürlich, wenn Sie den Daten, die in gespeichert, die in eine binäre form, verlieren Sie alle git ' s Fähigkeit, effizient speichern die Daten mit den diffs (änderungen). Also, die Nummer eins der "best practice" ist dies: speichern der Daten in einer text-serialisierten format.
mysqldump ist ein geeignetes Programm, um Ihnen dabei helfen. Es ist nicht perfekt, obwohl. Wenn etwas stört das serialisieren Reihenfolge der Elemente (zB. als Ergebnis der Erstellung von neuen Tabellen, etc.) dann künstliche breaks, die Sie in der diff. Das wird zu einem Rückgang der Effizienz der Speicherung. Sie schreiben, könnte eine custom-serialiser zu serialise nur änderungen-aber dann sind Sie zu tun die harte Arbeit, die git ist schon gut. Verwenden Sie einfach den sql-dump.
Dass gesagt wird, was Sie wollen zu tun, was nicht die devs in der Regel bedeuten, wenn Sie reden über putting Sie die Datenbank in git. Zum Beispiel, wenn Sie Lesen den link, gepostet von @eggyal (link zu codinghorror) Sie werden sehen, dass das, was ist eigentlich platziert in git sind die Skripte benötigt, um die Initiale Erstellung der Datenbank. Möglicherweise gibt es weitere Skripte, wie jene um die Datenbank zu füllen und die Daten mit einem "sauberen" Zustand, oder füllen Sie es mit Testdaten. Alle diese sql-Skripte sind text-Dateien, und so ziemlich das gleiche format wie die sql-dump-Sie würden von mysqldump. Es gibt also keinen Grund, warum Sie es nicht tun, Weg mit Ihren Tag-zu-Tag-Daten als auch.
Ich bin damit einverstanden. Das ist das, was ich Rede, wenn ich sagte, einige der sql-Skripts kann die Datenbank füllen, mit sauberen Ausgangszustand. Die beschriebene Strategie wäre sehr effektiv, wenn Sie wollte, stellen sich schnell einige wordpress-sites nach einigen vorkonfigurierten Zustand, z.B. mit einer bevorzugten ersten config des gewünschten plugins, etc.
InformationsquelleAutor Kevin A. Naudé
Gibt es nicht viele software zur Verfügung, um version-control-Datenbanken wie MySQL und MongoDB.
Aber eines ist in Entwicklung und die beta-version wird in Kürze veröffentlicht. Check-out Klonio - Versionskontrolle für Datenbanken
InformationsquelleAutor Kevin
Den Artikel Wie Synchronisieren Eines Lokalen & Remote-WordPress-Blog Mit Version Control gibt Ratschläge, wie Sie automatisieren die Synchronisierung zwischen zwei Instanzen (Entwicklung, Produktion) an einem WordPress blog mit Mercurial. Ist erwähnt, dass für dieses Szenario, Git und Mercurial sind sich sehr ähnlich.
Schritt 4 (Synchronisation Der Datenbanken) ist hier von Interesse.
Dann, es baut auf, Konflikte und das scripting Teil der Arbeit.
Es ist ein version control tutorial in Mercurial gibt, wenn Sie nicht vertraut mit es.
InformationsquelleAutor abanmitra
Sich bewusst sein, dass WordPress speichert alle news-feed-Inhalte in der Datenbank, also auch wenn Sie keine änderungen, es wird eine Menge von wechselnden Inhalten.
InformationsquelleAutor Anonymous