Master, sure; that takes a (long) while. But one: you've got to start somewhere, and two: Chapter 8 (<a href="http://www-cs-students.stanford.edu/~blynn/gitmagic/book.html#_secrets_revealed" rel="nofollow">http://www-cs-students.stanford.edu/~blynn/gitmagic/book.htm...</a>) covers this.<p>I understand Git's internals well enough, but I don't, nor have I tried to understand the actual packing heuristics, nor do I believe that I need to, to be good at git. (Recent HN posting on the packing heuristics: <a href="http://news.ycombinator.com/item?id=1058204" rel="nofollow">http://news.ycombinator.com/item?id=1058204</a>)