title: Create git branch, and revert original to upstream state
body: <p>I recently screwed up my git repo and would like to find out if there is any remedy to it.</p>
  
  <p>My setup is this:</p>
  
  <pre><code>Central repo on github.
  Personal repo on github (which is a fork of Central)
     +Central is setup as remote (upstream/master)
     +Master branch (origin/master)
     +Feature branch (origin/feature)
  </code></pre>
  
  <p>My workflow was like this:</p>
  
  <pre><code>Need to fix something in Central:
     1. checkout Master
     2. Make changes
     3. Pull from upstream/master and merge
     3. Commit, push to upstream/master
  
  Need to work on a New Feature:
     1. Checkout/Create Feature branch
     2. Work work work
     3. Pull from upstream/master and merge
     4. Commit, push to upstream/master
  </code></pre>
  
  <p>This way I always had a pristine state of Central in my Master branch. </p>
  
  <p>Now what I did was started working on Master branch instead. So I made changes to my master and can no longer branch from it to get a copy of Central. Whenever I need to make and push some fixes to Central, i have to clone the Central into another directory and work from there.</p>
  
  <p>My question: Is there a way to "revert" my master to be an identical copy of the Central, while moving all the changes I have made on my Master into another branch (say Feature)?</p>
  
  <p>I know it's confusing, and I would appreciate any help. I will clarify if anything is unclear.</p>