Git protip : réparer le dernier commit avec "--amend"
Par Maxime Bréhin • Publié le 26 sept. 2022

Mise à jour le 23 septembre 2022, 09:51

Ah, les fautes d’inattention, les oublis et autres messages mal rédigés… Toutes ces situations où on a créé un commit pour s’apercevoir dans la foulée qu’on a foiré !

Heureusement l’option --amend de la commande commit est là pour nous sauver 😮‍💨 !

Conceptuellement, Git fera pour nous un pas en arrière puis un pas en avant. Il va revenir à l’état d’avant validation, donc avec nos fichiers stagés (équivalent de git reset --soft HEAD~1), et revalidera automatiquement avec tous les fichiers stagés (dont les nouveaux, si on avait ajouté au stage avant de lancer le --amend). En gros, il va annuler notre commit et en créer un nouveau à la place, nous permettant des modifications intermédiaires :

  • ajout/retrait de fichiers ;
  • mise à jour des méta-données (généralement le message de commit).

En amendant on déréférence le commit actuel au profit d’un nouveau, dérivé de celui-ci

La commande est simple :

git commit --amend

Voyons les cas de figure classiques.

Ajout d’un fichier oublié

Le cas le plus courant est l’oubli d’un fichier, très souvent non suivi et non ajouté à la volée lors d’un git commit -am '…'.

La procédure est alors la suivante :

  • on ajoute le ou les fichiers au stage : git add <les-chemins> ;
  • on annule/remplace le commit : git commit --amend

Mise à jour du message

Qui n’a jamais fait de faute de frappe ni oublié une référence importante comme un numéro de ticket dans un message de commit ? Personnalement je suis assez champion de ça.

Dans cette situation on va devoir :

  • vérifier que notre stage est vide (on ne veut pas embarquer des choses dans le commit revisité) ;
  • lancer la commande git commit --amend, éventuellement avec le message « à la volée » si on souhaite le réécrire entièrement (git commit --amend -m 'Nouveau message').

Tu veux en savoir plus sur la manière dont est construit un commit ? On a un article qui parle de ça !.

Des astuces en veux-tu en voilà !

On a tout plein d’articles et de vidéos existants et encore beaucoup à venir. Pour ne rien manquer, tu devrais penser à t’abonner à notre newsletter, à notre chaîne YouTube, nous suivre sur Twitter ou encore mieux, à suivre notre formation du feu de dieu 🔥 : Git Total !

Découvrez nos cours vidéo ! 🖥

Nos cours vidéo sont un complément idéal et bon marché à nos articles techniques et formations présentielles. Autour de Git, de JavaScript et d’autres sujets, retrouvez des contenus de très grande qualité à des prix abordables, spécialement conçus pour lever vos plus gros points de blocage.