Git: How do I rewind the Master branch on the remote origin
I made 5 commits to Master branch when bug hunting on a private project and pushed them to the remote origin (my own private vps).
Then I saw that commits 4 and 5 were going to ca开发者_如何学Pythonuse trouble elsewhere and I need to undo them, so I checked out commit 3 again, made a new branch "Dev" from that point, and did a few more commits fixing the issue properly.
Then I did
git reset --hard HEAD~2 on Master to pull it back to the point that I branched Dev.
Then I did git merge to fast forward Master back to the end of the Dev branch.
So now I have a local repository, with Dev and Master both pointing to the same, up to date version of the project with the latest bug fix.
Problem is, when I try to push the project now to the origin, it fails and gives me an error message:
! [rejected] master -> master (non-fast forward) error: failed to push some refs to 'myserver...myproject.git'
What have I done wrong, and how do I fix it?
Thanks
It just doesn't like the fact that the branch you're pushing to isn't an ancestor of what you're pushing.
If you're certain you want to do that, just add the -f flag (force) to the push.
精彩评论