Le Rollback est le filet de sécurité ultime de tout ingénieur DevOps. Sachez réagir avec calme et méthode face à une régression critique : rollback instantané en 1 clic sur PaaS et utilisation rigoureuse de git revert.
Régression bloquante découverte en production (ex: échec des paiements).
Rétablissement de l'ancien bundle en 5 secondes sans refaire de build.
Crée un nouveau commit annulant le commit défaillant sans réécrire l'historique.
git reset --hard est formellement banni en production car il détruit la traçabilité.
# 1. Identifier le hash du commit coupable dans les logs récents $ git log --oneline -n 5 a1b2c3d (HEAD -> main, origin/main) feat: update checkout payment logic # 🚨 C'est lui qui crashe ! e4f5a6b fix: update navbar logo 7f3a9bc feat: initial commit ready for production # 2. Annuler proprement le commit fautif avec git revert $ git revert a1b2c3d --no-edit [main 9c8b7a6] Revert "feat: update checkout payment logic" 3 files changed, 14 insertions(+), 68 deletions(-) # 3. Pousser l'annulation immédiatement vers GitHub $ git push origin main To github.com:organisation/learnweb-app.git a1b2c3d..9c8b7a6 main -> main # ⚡ La CI/CD déploie l'annulation : la production redevient stable en moins d'une minute !
git pull, vous corrompez leur historique et provoquez des conflits insolubles.| Stratégie | Délai de Résolution | Niveau de Risque | Quand l'Utiliser ? |
|---|---|---|---|
| Instant Rollback (Console PaaS) | 5 à 15 secondes | Nul (ancien bundle déjà validé) | Urgence absolue pour rétablir le service aux utilisateurs |
| git revert + push | 1 à 2 minutes | Très faible | Rollback standard traçable dans Git et sur serveurs VPS |
| Hotfix en urgence (nouveau commit) | 15 à 60 minutes | Élevé (risque d'introduire un second bug) | Uniquement si le bug est trivial (faute de frappe, variable .env) |
| git reset --hard (Dépôt partagé) | Dangereux | Critique (destruction d'historique) | INTERDIT en production partagée |