I have a base repository that lives on a UNC \\machine\\share ....etc. I have a local clone that I work on in the master branch and occasionally merge over to the \"stable\
For the record, I believe the root cause of this problem was the difference in capitalisation between the local and remote branch names, and the case-insensitive nature of the Windows share that hosted the remote repository.
We just encountered this exact same error and were able to resolve the problem simply by renaming the local branch to match the capitalisation of the existing remote branch.
See here how to rename a local branch.
In Windows, due to capitalization, you may need to take two steps:
git branch -m example foo
git branch -m foo EXAMPLE