Show HN: ugit – Learn Git Internals by Building Git in Python
Looks neat! This reminds me heavily of the excellent Building Git by James Coglan[1].<p>From a cursory glance though, it doesn't seem to support reading packfiles. This was the big thing that prevented me from using a fully custom Git implementation when I wrote my git churn calculator[2]. For larger repositories, it seems that almost all files are stored in packfiles, rather than the conceptually simpler "loose" format.<p>For me, the most valuable resource was reading the Git / libgit2 source and reference documentation.<p>[1] <a href="https://shop.jcoglan.com/building-git/" rel="nofollow">https://shop.jcoglan.com/building-git/</a><p>[2] <a href="https://github.com/samdoiron/butter" rel="nofollow">https://github.com/samdoiron/butter</a>