Updaten ohne Downtime

Ok vielen vielen Dank, dass hat mir sehr geholfen.

Also lade ich jetzt alles in einen Upload Ordner was sich ändern soll, dann geht ein script mit der copy funktion drüber und ersetzt sozusagen die originaldateien in einem rutsch, ohne das der User davon etwas mitbekommt?
 
Nocheinmal: Nicht kopieren.

NICHT kopieren.

Umbenennen (egal ob im gleichen Ordner oder nicht, Umbenennen==Verschieben)
 
Genau :)

Das Problem mit dem Kopieren ist, dass da ja essentiell der gesamte Dateiinhalt
gelesen und in die neue Datei geschrieben wird,
also Öffnen, irgendwie lesen/schreiben und wieder schließen.

(na gut, abhängig vom Dateisystem gehts evt. besser, weil die zwei
Dateien ja bis auf Weiteres den selben Inhalt haben. Egal.),

Wenn der Kernel da andere Aktionen auf der Datei derweil anhalten würde...
kann gar nicht funktionieren, weil das Kopieren selber ja auch aus blockierbaren Aktionen besteht.
Würde sich selber blockieren (und zusätzlich alle anderen Dateioperationen)

Umbenennen selber ändert nur den gespeicherten Pfad und Namen zu einem Datending.
Und auf Linux ist das eben so gemacht, dass nichts anderes (außerhalb vom Kernel)
dazwischen kommen kann.
 
Ja, aber mit SVN bekommst du sogar noch mehr Probleme :)

SVN ist nicht zur allgemeinen Dateiverwaltung gedacht.
Wenn du vom gesamten Inhalt eine Menge alte Kopien speichern
willst und dir jederzeit die Änderungen von Datei X zwischen Datum
Y und Z anzeigen lassen willst, das klingt nach einer Aufgabe für SVN.
Aber sonst...

(SVN zur Verwaltung der PHP-Dateien lokal, gern.
Aber in den Ordner, woraus Apache/PHP die Dateien nehmen? ...)
 
Hmm ja das klingt logisch.

Ich suche jetzt nur noch nach einer automatischen Möglichkeit, dass mir nur die geänderten files auf den Server in den deployment Ordner geladen werden. Denn wenn ich z.B. eine Woche an einer neuen Funktion arbeite, kann es ja passieren, dass ich nicht mehr genau weiß, welche Dateien nun alles geändert wurden.

Desshalb dachte ich an die Markierungen von SVN (also Ausrufezeichen oder Haken)
 
Zurück