Move your latest commits to a separate branch
14 August 2012
The situation is pretty straightforward. You have been making commits for that new feature in your
master branch. Naughty you!
Let’s assume you want to have this:
A - B - (C) - D - E - F
C was the last commit you pulled from
origin and D, E and F are commits you just made but should have been in their own branch. This is what you wanted:
A - B - (C) \ D - E F
Step 1: Assuming you’re at
master, create a new branch with those commits:
git branch my_feature_branch
Then, still on
master, reset back to commit
C. This is 3 commits back.
git reset --hard HEAD~3
master is now back at
C, which you lasted pulled, and the
my_feature_branch includes D, E and F. Just checkout
my_feature_branch and continue work as usual. I’m sure no one saw what you just did.