Git-Deployment auf Webspace und Server
Git kann Quellcode nachvollziehbar auf einen Webspace oder Server übertragen. Ein Repository ist jedoch noch kein Backup und ein ungeprüftes git pull kann eine produktive Website in einen inkonsistenten Zustand bringen.
Inhaltsverzeichnis
Voraussetzungen
- Git und SSH müssen verfügbar sein.
- Das Repository muss vertrauenswürdig und zugriffsgeschützt sein.
- Zugangsschlüssel erhalten nur die benötigten Rechte.
- Datenbank, Uploads und Konfigurationsdateien werden getrennt gesichert.
Bestehenden Stand prüfen
pwd
git status
git remote -v
git branch --show-current
git log --oneline --decorate -n 10Prüfen Sie besonders lokale Änderungen. Ein Deployment darf keine Dateien überschreiben, die nur auf dem Server existieren und nicht anderweitig gesichert sind.
Änderungen vorbereiten
git fetch --prune
git status
git log --oneline HEAD..origin/main
git diff --stat HEAD..origin/mainErsetzen Sie main, wenn das Projekt einen anderen Produktionszweig verwendet. fetch lädt zunächst nur Informationen; es verändert den ausgecheckten Stand nicht.
Kontrolliertes Deployment
- Sichern Sie Datenbank, benutzergenerierte Dateien und Konfiguration.
- Aktivieren Sie bei Bedarf einen Wartungsmodus.
- Stellen Sie exakt den getesteten Commit oder Release bereit.
- Installieren Sie Abhängigkeiten anhand vorhandener Lock-Dateien.
- Führen Sie notwendige Migrationen nur nach deren Prüfung aus.
- Leeren Sie anwendungsspezifische Caches.
- Prüfen Sie Startseite, Anmeldung, Formulare, Cronjobs und Protokolle.
Wichtig: Zugangsdaten, .env-Dateien, Backups und Uploads gehören normalerweise nicht in das Repository. Verwenden Sie keine erzwungenen Resets, bevor lokale Änderungen geklärt und gesichert wurden.
Rollback
Dokumentieren Sie vorab, welcher Commit zuvor aktiv war. Ein Code-Rollback macht eine bereits ausgeführte, nicht rückwärtskompatible Datenbankmigration nicht automatisch rückgängig.

