Carl Worth [off-list ref] writes:
Stashing (on branch 'feature'):
git commit -a -m 'snapshot WIP'
Recovering:
git checkout feature
git reset --soft HEAD^
git reset
If I were doing this today, I would probably do this:
git commit -a -m 'WIP'
git checkout elsewhere ;# interrupted
... hack hack hack ...
git checkout feature ;# come back
... hack hack hack ...
git commit --amend
But I wonder why the originally suggested sequence is reset soft
to the state we want and then another reset. Without
experimenting myself or thinking hard about it, I would expect
"git reset HEAD^" should do what we want, in which case:
Stashing (on branch 'feature'):
git commit -a -m 'snapshot WIP'
Recovering:
git checkout feature
git reset HEAD^