111 votes

git: annule la validation en cours de saisie du message

Je suis en train de commettre. J'ai tapé mon message de commit dans vim. Je me souvenais maintenant que j'avais besoin de changer quelque chose. Je me rends compte qu'il existe d'autres options pour accomplir ce que je veux, mais je veux savoir s'il existe un moyen d'abandonner le commit, tout en sauvegardant le message de commit que j'ai tapé jusqu'à présent.

78voto

Borealid Points 35075

Oui. Écrire le message de commit à un autre fichier (:w /some/other/path.txt). Quittez l'éditeur sans enregistrer (:q!). Si vous avez déjà enregistré le fichier sur son tracé d'origine, tout effacer et écrire le vide du premier fichier (vide message de commit va annuler le valider).

Maintenant, quand vous êtes prêt à s'engager "pour les réels", utilisez le fichier de message que vous avez enregistré à l'autre chemin.

Alternativement, copiez le message de commit dans l'une de vim en mémoire.

Il est intéressant de noter que vous n'avez pas vraiment de faire tout cela: commit --amend vous permet de modifier le valider après qu'il est fait, donc la solution de facilité est de produire de la commettre avec ce que vous avez et puis le fixer avant de le pousser. Vous pouvez même juste la fin de l'engager dans son état rompu, reset HEAD~ (réinitialise vous de l'état de votre copie de travail avant le commit), la correction de votre copie de travail, et ensuite, commit -a -c HEAD@{1} à utiliser l'ancien message de commit.

63voto

zetta Points 61

Si vim est ouvert pour écrire votre message de commit, supprimez simplement les lignes qui ne commencent pas par # et git annulera votre commit.

 Aborting commit due to empty commit message.
 

9voto

bdonlan Points 90068

Bien que vous puissiez abandonner le commit, une autre approche consiste à modifier le commit par la suite. Commencez simplement votre travail actuel, puis effectuez les modifications supplémentaires souhaitées, git add , puis exécutez git commit --amend . Vous serez replacé dans l'éditeur de message de validation et, lorsque vous enregistrez, la validation est modifiée pour inclure les modifications supplémentaires et votre nouveau message de validation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: