How to fix committing to the wrong Git branch?

mikewilliamson picture mikewilliamson · May 31, 2010 · Viewed 152.7k times · Source

I just made a perfectly good commit to the wrong branch. How do I undo the last commit in my master branch and then take those same changes and get them into my upgrade branch?

Answer

Blair Holloway picture Blair Holloway · May 31, 2010

If you haven't yet pushed your changes, you can also do a soft reset:

git reset --soft HEAD^

This will revert the commit, but put the committed changes back into your index. Assuming the branches are relatively up-to-date with regard to each other, git will let you do a checkout into the other branch, whereupon you can simply commit:

git checkout branch
git commit

The disadvantage is that you need to re-enter your commit message.