title: git revert commit/push but keep changes
body: <p>It goes like this:</p>
  
  <ul>
  <li><p>I have files A and B that I modified</p></li>
  <li><p>I'm only suppose to commit and push A, but accidentally committed both and pushed both A and B</p></li>
  <li><p>I did a "git push old-id:master" so on github it shows "Master is now old-id" where old-id is the last commit before me, so i think it's back to before i committed.</p></li>
  </ul>
  
  <p>Question:</p>
  
  <ul>
  <li>On my local, how do i undo the commit that has A and B, and commit only A, and push only A?</li>
  </ul>
  
  <p>Note: I do need to keep the changes for both A and B on my local though. The end result should be:</p>
  
  <ul>
  <li>Local - new A and new B </li>
  <li>Github - new A and old B</li>
  </ul>