So git pull
merges by default, when it should really rebase. You can ask it to rebase instead, but it still won't touch anything other than the currently checked-out branch. If you're tracking a bunch of remote branches, you'll get non-fast-forward complaints next time you push.
Solve it once and for all:
git-up
might mess up your branches, or set your chest hair on fire, or be racist to your cat, I don't know. It works for me.