This is exactly why I wrote my tutorial:<p><a href="http://news.ycombinator.com/item?id=531517" rel="nofollow">http://news.ycombinator.com/item?id=531517</a><p>It's pretty sad that this one not only assumes that knowledge of the internals is unnecessary, it in fact praises such ignorance ("newbies can ignore its inner workings and view Git as a gizmo that can amaze friends and infuriate enemies with its wondrous abilities"). This is particularly true considering that the relevant parts of the Git internals are actually quite simple.