Unpacking Git
Some remember what software development was like before Git; others can hardly imagine a world without it. Git is here to stay, and it’s a crucial part of any software development lifecycle.
But how does it actually work? It almost feels like magic, but in reality it’s powered by data structures and algorithms optimized to solve specific problems.
In this talk, we’re going to dive into Git’s internals. You’ll learn how Git stores files and their contents, explore the internal objects it uses, and see how it compresses and deduplicates data to optimize for storage and what gets cached for speed.
We’ll lift the mystery behind how Git syncs data between your local machine and a remote server, with a deep dive into Git’s smart HTTP protocol. Together, we’ll walk through what happens under the hood when you "push" data to a remote server. How the server knows what to update when you "fetch" an update or "clone" a new repository, and which bits and bytes actually git transferred (yes, there will be puns).
This talk condenses hours of research into an informative, possibly entertaining session that will help you understand Git’s protocols, data storage, and performance optimizations — without sacrificing your sanity.