Thomas Rast [off-list ref] writes:
I was a bit torn on whether I should abort with checkout, or without
it. The manual clearly states that rebase "will perform an automatic
git checkout <branch> before doing anything else", which mandates at
least *trying* the checkout in the error path, hence this version.
However, in contrived cases this can lead to strange behavior. For
example, a checkout conflict with a file in the worktree may prevent
the abort path from working correctly, even though going through with
the rebase itself may succeed.
Given all that contortion, is it even worth doing this?