Bottoms Up
I had trouble understanding git before I read "Git From The Bottom Up". The data structure on which git is based is really simple and easy to understand. Once you understand it the front end becomes a lot more comprehensible.
I do find the nomenclature in the git front end to be really odd. The names of a lot of the commands don't sound like what they do, imo.