Well I've been working for a project. today I was experimenting with windows specific wchar
and I needed to do change a lot of code since morning and I ended up with an ugly mess. That I can clear out latter but right now I need to do some mainstream works on last working commit. But I don't want to loose this work. So how can I keep this work in some branch for future and revert my workspace back to last commit ?
问题:
回答1:
You can create a new branch and commit your changes to it:
git checkout -b topic/ugly-mess
git commit -a -m 'Checkpointing mess.'
Then go back to your mainstream branch which has the last working commit:
git checkout master
If you want your to publish your "local mess" upstream, push the branch:
git push origin topic/ugly-mess
回答2:
Simply create a new branch
git branch -b wchar_migration
and commit your changes into it
git commit -am "wchar ..."
then go back to your work
git checkout master
If later you want to include the modification you made on master, simply rebase on it.
git co wchar_migration
git rebase master
回答3:
You probably don't even need a branch. If you use git stash
, git stashes (stores) the current 'dirty' workspace and returns you to a clean workspace. You can apply
the stashed changes later if you want.
回答4:
So long as you haven't committed any of this work, you can always git stash
your experiment.
But you've described this as experimental so another option, and probably the better one, is to keep this work in it's own branch, e.g. git checkout -b wcharExperiment
, commit the work into this new branch, then checkout your main branch.