Ich entwickle viele Themen. Ich bekomme eine PSD, codiere das HTML / CSS, schlage den Code in Wordpress und nehme Korrekturen vor, sobald sie eine Qualitätskontrolle erhalten. Einmal live, können Kunden Blog-Beiträge wie gewohnt bearbeiten oder Fotos mit einem benutzerdefinierten Plugin hochladen.
Manchmal muss ich Änderungen am Thema oder am Seiten- / Post-Inhalt vornehmen, was bedeutet, dass ich sie entweder live mache oder die Site in eine vom Client zu genehmigende Entwicklungsumgebung herunterladen und einrichten muss. Ich habe kein Backup, keine Versionskontrolle und mir ist klar, dass sich dies ändern muss.
Git und Mercurial wurden vorgeschlagen, und ich möchte diese Tools nutzen, bin jedoch verwirrt darüber, wie sie in einen Workflow integriert werden können.
Benötige ich alle Änderungen an einer Site auf einem Entwicklungsserver und übertrage sie nach der Genehmigung live? Was ist mit dem Schreiben von Blog-Posts? Es scheint übertrieben, Beiträge auf dev zu schreiben und die Änderungen live zu übertragen. Aber wie synchronisiere ich dann die Datenbanken, wenn sie auf der Live-Site bearbeitet werden? Ich habe das Internet durchsucht. Eine Anleitung wäre dankbar.
Antworten:
Zunächst müssen Sie erkennen, dass es hier zwei Workflows gibt: Ihren und Ihren Kunden.
Ihr Workflow
Ihr Workflow
Die Angelegenheit
Die Implementierung der Versionskontrolle hier hat absolut nichts mit dem Workflow Ihrer Kunden zu tun. Es geht darum, den Code zu verfolgen, den Sie für das WordPress-Theme verwenden. Alle Ihre Themendateien, benutzerdefinierten Plugins usw. sollten sich in einem Versionskontrollsystem befinden (Git, Mercurial, Subversion oder was auch immer Sie verwenden möchten).
Ihr Workflow wird dann:
Denken Sie daran, dass hier ein Versionskontrollverlauf für Ihren Code verwaltet wird . Code sollte von Ihren Kunden nicht geändert werden - und Sie sollten den Code auf einer Produktionsstätte niemals ändern, während er in der Produktion ist.
Änderungen am Inhalt (Beiträge, Fotos usw.) liegen jedoch außerhalb des Bereichs Ihres Versionskontrollsystems. Mit anderen Worten, Sie nehmen keine Änderungen in der Entwicklung vor und übertragen die Datenbank dann an die Produktion. Das ist eine schlechte Entwicklungspraxis. Wenn die Entwickler- und Produktdatenbanken synchron sein müssen, sollten Sie routinemäßig ein Backup aus der Produktionsbox ziehen und Ihre lokale Version aus diesem Backup wiederherstellen.
Codeänderungen fließen von der Entwicklung in die Produktion.
Datenbankänderungen fließen von der Produktion in die Entwicklung.
quelle
Sie können Software verwenden, die die Datenbanken synchronisiert. Es besteht aber auch die Möglichkeit, die Daten selbst mit http://chronicdb.com zu versionieren
quelle
Ich habe gerade eine gründliche Antwort auf eine andere Frage geschrieben. Persönlich benutze ich Git und es ist fantastisch. Für den Einstieg würde ich empfehlen, http://gitref.org/ und http://help.github.com/mac-set-up-git/ zu besuchen . Wenn Sie der Buchtyp sind, habe ich diesen gelesen und er ist definitiv den Preis von 22 US-Dollar für E- Books wert. Lassen Sie es sich tun, Sie werden diese Entscheidung nicht bereuen.
quelle