Ivan Fernandez Ivan Fernandez - 2 months ago 12x
Git Question

How to delete the last n commit on Github and locally?

I'm trying to delete the last 2 commits in one of my GitHub repositories. I've tried as suggested here : git push -f origin HEAD^^:master. It seems that it works, the last two commits are removed.

Then I deleted them from my local repository with git rebase -i HEAD~2. I remove the lines than are related with those commit, and check with git log that they are correctly removed.

After that I make some changes in my local repository, make a new commit and push to GitHub. The problem is that in my GitHub account I have the previous two commit I've tried to delete.

I think the problem it's in my local repository because if I clone my Github repository to my local, and make some changes here when I push a new commit those old commits aren't pushed to GitHub.

Any idea?


To remove the last two commits locally I'd suggest using:

git reset --hard HEAD^^

Rebase is a completely different operation that won't help you here.