Earlier quoted context omitted.
That is overly verbose. Try this: git checkout -b changes_on_their_own_branch git commit -a You can always create a new branch at HEAD (where you are currently) and switch to it without having to stash. On the other hand, stashing may be required if you wanted your branch to start elsewhere: git checkout -b changes_branch start_point
But doesn't git stop you from switching to another branch when there are uncommitted changes?
In other words, no harm in trying the `git checkout other_branch` first, and only stashing if that fails.