J'ai "accidentellement" ; poussé un commit sur GitHub.
Est-il possible de supprimer ce commit ?
Je veux rétablir mon dépôt GitHub tel qu'il était avant ce commit.
Note: veuillez voir l'alternative à
git rebase -i
dans les commentaires ci-dessous-.
git reset --soft HEAD^
Tout d'abord, supprimez le commit sur votre dépôt local. Vous pouvez le faire en utilisant git rebase -i
. Par exemple, si c'est votre dernier commit, vous pouvez faire git rebase -i HEAD~2
et supprimer la deuxième ligne dans la fenêtre de l'éditeur qui s'ouvre.
Ensuite, forcez le push vers GitHub en utilisant git push origin +branchName --force
.
Voir Git Magic Chapter 5 : Lessons of History - And Then Some pour plus d'informations (par exemple si vous voulez supprimer des commits plus anciens).
Oh, et si votre arbre de travail est sale, vous devez faire un git stash
d'abord, et ensuite un git stash apply
après.
Vous devrez vider votre cache pour qu'il soit complètement effacé. Cette page d'aide de git vous aidera. (elle m'a aidé) http://help.github.com/remove-sensitive-data/