It is fair to expect a developer to invest sometime in learning their tools well but git is a different beast. I know it solves a very complex problem but the fact that it exposes a complex interface to the user to do so seems like a shortcoming of the tool to me.
Heck, we even have a comic for it that shows how sometimes just saving my work, deleting my clone, re-cloning the repo and applying the changes in my work is easier than understanding the Git error messages: https://xkcd.com/1597/.
The tooltip in the comic is also sound advice: If that doesn't fix it, git.txt contains the phone number of a friend of mine who understands git. Just wait through a few minutes of 'It's really pretty simple, just think of branches as...' and eventually you'll learn the commands that will fix everything.