Fragen:
-
Hatten Sie (sie) noch nie eine Katastrophe, bei der Sie (sie) zu einer früheren Version der Website zurückkehren mussten, dies aber nicht konnten, weil sie kaputt gegangen war?
-
Verwenden sie einen Staging-Webserver, um Änderungen zu testen?
-
Sie ändern doch sicher nicht den Code auf dem Produktionsserver, ohne ihn irgendwo zu testen?
Ich vermute, dass die Antwort auf die erste Frage "ja (sie hatten Katastrophen)" und auf die zweite "nein" lautet, und ich zögere, die Antwort auf die dritte Frage zu erraten (aber so wie es sich anhört, könnte die Antwort lauten "ja, das tun sie wirklich"). Wenn das stimmt, bewundere ich ihre Tapferkeit und bin erstaunt, dass sie nie einen Fehler machen. Ich würde es nie riskieren, Änderungen direkt auf einer Live-Website vorzunehmen.
Ich würde empfehlen, selbst ein Versionskontrollsystem oder VCS (irgendein VCS) zu verwenden. Arbeiten Sie die Feinheiten für den Code aus, um den Sie sich kümmern, und entwickeln Sie eine geschickte Verteilung, die es einfach macht (wahrscheinlich immer noch mit SFTP), den VCS-Code auf der Website zu verteilen. Zeigen Sie aber auch, dass die Bewahrung der früheren Versionen ihre Vorteile hat - denn Sie können wiederherstellen, wer was wann gemacht hat. Für den Anfang werden Sie vielleicht feststellen, dass Sie die aktuelle Version der Seite (Datei), an der Sie arbeiten wollen, herunterladen und diese neueste Version in das VCS einspeisen müssen, bevor Sie mit der Änderung der Seite beginnen, weil jemand anderes sie seit der letzten Aktualisierung in Ihrem Haupt-Repository geändert haben könnte. Sie könnten auch einen täglichen "Scrap" der Dateien durchführen, um die aktuellen Versionen zu erhalten - und Änderungen zu verfolgen. Sie hätten weder das "Wer", noch das genaue "Wann" (besser als auf den Tag genau), noch das "Warum", aber Sie hätten das (kumulative) "Was" der Änderungen.
Als Antwort auf die Kommentare in der Anfrage stellte Ólafur Waage klar, dass es aufgrund des Fehlens eines VCS zu Katastrophen gekommen sei.
Das macht das Leben normalerweise viel einfacher. Sie haben einen Fehler gemacht, den sie nicht mehr rückgängig machen konnten - sie hatten wahrscheinlich verärgerte Kunden und hätten sich eigentlich über sich selbst ärgern müssen. Ein VCS macht es viel einfacher, solche Fehler zu korrigieren. Natürlich braucht man für jede angepasste Seite ein (zentrales) Backup der "richtigen" oder "offiziellen" Version dieser Seite, die im VCS verfügbar ist. Ich würde mich wahrscheinlich für ein einziges Repository für alle Kunden entscheiden und ein VCS verwenden, das eine gute Unterstützung für Verzweigungen und Zusammenführungen bietet. Das mag anfangs schwieriger zu handhaben sein (während die Leute sich an die Benutzung eines VCS gewöhnen), führt aber langfristig wahrscheinlich zu besseren Ergebnissen. Ich würde ernsthaft in Erwägung ziehen, eines der modernen verteilten VCS zu verwenden (z.B., git ), obwohl viele Leute auch SVN benutzen (auch wenn es kein verteiltes VCS ist).