Permanent Fix
git update-ref -d
resolved my instance of this error, e.g.
git update-ref -d refs/remotes/origin/user
Note that this doesn't impact remote.
In my case, a subsequent git fetch
fetched that branch again, and following git fetches/pulls no longer gave the error "remote ref is at but expected".
If that doesn't work, a temporary fix:
Note also that if you don't care about the branch in question (e.g. you just want to update master, not origin/user), a git pull
workaround is to fetch then just merge the particular branch you care about, e.g.
git fetch # may give an error for a particular branch, but other branches will still be successfully fetched
git merge origin/master