I consider git to be almost like a programming language.
The information model is not complex, it's actually quite simple if you really understand it.
* blob: roughly a file (without a name)
* tree: roughly a dir (maps names to blobs and trees)
* commit: tree + parent commit(s) + meta data (author, commit msg, etc).
If you grok this core data model, a lot of things will make much more sense.
http://git-scm.com/book/en/Git-Internals-Git-Objects
I don't know if anyone shares my experience, but I actually found svn rather mysterious and difficult to understand. I never actually saw the point to it at all, so I never bothered using it (unless it was mandated by some authority).
It's only when I understood git that I really understood what version control is supposed to be about.
So, I think people who try to "dumb it down" by giving tutorials that ignore the data model and focus only on the usage are not doing anyone a favor.
Git should be treated like a new programming language or a new operating system. Spend a few days reading (or watching youtube videos) about how it works and why it was designed this way.
Yes, you really have to understand how it works. But it's precisely the fact that you can do so, that make git the best version control system out there in my opinion.