got myself into trouble; now what? - how to revert once you've pushed
- From
Robert Buck <buck.robert.j@gmail.com>
- Date
- Mar 1, 2011, 19:37 UTC
- Message-ID
- <AANLkTi=RGhGMcoDEL4q2pnnZ97tdswYG7OkjNS3wF7jn@mail.gmail.com>
I have a problem where a unexpected merge occurred and got pushed to our Gitolite repository.
We have two branches: master, feature/wixinstall
Apparently a merge happened from the branch to master (and I am pretty sure I never typed `git merge...`). But alas, a merge somehow happened and got pushed.
Then I followed the Git Pro documentation, which said to do this...
git revert -m 1 [sha_of_C8]
Now I am left with a bigger mess. When I merge master to the branch, all the newly added files on the branch got deleted (not what I wanted). Somehow git is interpreting the revert literally as a sequence of deletes which it incorrectly then applies to the work on the branch.
What I really wanted the revert to do is restore the history of the world immediately prior to the merge. But now I have a branch I can't merge into at all without losing a weeks work.
How can I get out of this mess?
Bob