146 votes

Existe-t-il un moyen d'annuler ma dernière poussée vers Git ?

Doublons possibles : Annuler un 'git push'

J'ai poussé du mauvais code et je suis le seul utilisateur du référentiel. Comment puis-je annuler mon dernier commit ?

223voto

manojlds Points 96599

Puisque vous êtes le seul utilisateur :

 git reset --hard HEAD@{1}
git push -f
git reset --hard HEAD@{1}

(en gros, reculez d'un commit, forcez le push vers le dépôt, puis revenez en arrière - supprimez la dernière étape si vous ne vous souciez pas du commit)

Sans apporter de modifications à votre dépôt local, vous pouvez également faire quelque chose comme :

 git push -f origin <sha_of_previous_commit>:master

Généralement, dans les dépôts publiés, il est plus sûr de faire git revert puis git push

90voto

Ken Bloom Points 27197

Vous devez d'abord déterminer l'ID de révision du dernier commit connu. Vous pouvez utiliser HEAD^ ou HEAD~{1} si vous savez que vous devez annuler exactement un commit.

 git reset --hard <revision_id_of_last_known_good_commit>
git push --force

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:

X