title: Undoing git push and pushing to another branch
body: <p>I have a branch that I've been working on (it was branched off master). Let's call it feature/ABC-1. It has not been merged back into master.
  A colleague of mine branched of my feature/ABC-1 branch and did some work on his private branch. Let's call it private/ABC-extra.</p>
  <p>He need me to fix something before he could continue working on his private branch, so I made the fixes and pushed my changes.</p>
  <p>Unfortunately, I pushed my changes to my original branch (feature/ABC-1) instead of his private branch (private/ABC-extra).</p>
  <p>I would like to somehow undo my push and then push the changes to his private branch.
  But I want to do this in a way so that to him it appears as though I never made the bad push in the first place. I don't want him to have to fix any conflicts or have some strange history errors or anything like that.</p>
  <p>Is this possible in git? If so, please tell me how.</p>
  <p>Thank you!</p>
  <p>P.S. I'm a git beginner. I just know some basic commands and concepts. So please be specific with commands and don't make assumptions. (otherwise I won't understand what you mean :D ).</p>