this fall I worked with the core Git folks on writing an official data model for Git and it just got merged! I learned a few new things from writing it. https://github.com/git/git/blob/master/Documentation/gitdatamodel.adoc
@[email protected] This is a really clear explanation that I've sometimes missed in the past. Thank you for making it happen!