When you aren't on any branch, have changes in your working files, and try to switch to another branch, you get an error message like this:
% git checkout another
Previous HEAD position was 0beee4c... git-add--interactive: remove hunk coalescing
error: You have local changes to 'git-add--interactive.perl'; cannot switch branches.
Because the first line says "Previous ... was", I was mislead to believe that I sucsessfully switched branches, but I was mistaken.
If git-checkout were still a shell script probably I would have looked into fixing this myself, but now it is rewritten in C... Can somebody fix this please?