For example when I was learning how to use it I routinely had to Google for many tens of minutes to answer questions such as:
What the fuck is "fast forward" and why is git displaying that message?
What are "refs" and why would I want to update them?
What is HEAD? Why isn't it named something more intuitive?
Etc. Why did I have to Google around for it? Because the documentation didn't actually answer my questions.
It's all compounded by the way the documentation is written: namely, from the perspective of the user who is intricately familiar with how git works. You have to remember the silly and needlessly obtuse names for everything. Why is there no "git-undo-commit"? What the fuck does rebase do? Bisect?
I realized writing this that even though I have undone commits in the past, I don't actually know how to do it. I just Google it every time.
It has the advantageous position of being better for certain workflows than CVS or mercurial perhaps, but frankly git is just not a very good piece of software.