The Guts of Git: Hashing, Compression, DAGs, Trees, and Blobs
by Matthew McCullough
Git is a version control system. We can look at it from that high level. Git is a content tracking system. Some teachers advise us to look at it from that lowered elevation. But let’s look at Git from the very bottom. The floor. The code. The algorithms. The directed acyclic graph of hashed bit sequences made efficient through zlib compression and deferred garbage collection determined by node reachability via hash relationships.
Subscribe to NFJS, the Magazine
About Matthew McCullough
Head of Training, GitHub
Matthew McCullough is an energetic 15 year veteran of enterprise software development, open source education, and co-founder of Ambient Ideas, LLC, a Denver consultancy. Matthew currently is VP of Training at GitHub.com, author of the Git Master Class series for O'Reilly, speaker at over 30 national and international conferences, author of three of the top 10 DZone RefCards, and President of the Denver Open Source Users Group. His current topics of research center around project automation: build tools (Gradle), distributed version control (Git, GitHub), Continuous Integration (Jenkins, Travis) and Quality Metrics (Sonar). Matthew resides in Denver, Colorado with his beautiful wife and two young daughters, who are active in nearly every outdoor activity Colorado has to offer.
