Partie 2 · Au quotidien
Commits : modifier et annuler
Un commit valide les modifications stockées dans l'index et les enregistre dans l'historique. Le cours indique deux cas (commandes en image) :
- modifier le dernier commit sans changer l'historique distant :
git commit --amend(hors cours : nom exact) ; - annuler un commit avant de le pousser : par exemple
git reset --soft HEAD~1(hors cours : exemple).
git commit --amend -m "Nouveau message"
Attention (hors cours) : --amend remplace le commit par un nouveau, donc un nouveau hash. À éviter si le commit est déjà poussé.
Vérifie que tu as compris
Quel est l'effet de
git commit --amend -m "Nouveau message" ?Les variantes de git reset (hors cours) :
| Commande | Branche | Index | Workspace |
|---|---|---|---|
git reset --soft HEAD~1 | recule d'un commit | conservé | conservé |
git reset --mixed HEAD~1 (défaut) | recule | réinitialisé | conservé |
git reset --hard HEAD~1 | recule | réinitialisé | écrasé : modifications perdues |
Vérifie que tu as compris
Que fait
git reset --hard HEAD~1 ?Vérifie que tu as compris
Tu veux défaire ton dernier commit local mais garder les fichiers dans l'index prêts à être recommités. Quelle commande ?