The Git repository format is a marvel of data structure design — nearly unchanged since the project's inception — and understanding it is key to becoming a Git power user.
In this talk, starting from the blob, commit, and tree objects that live inside Git's content-addressable store, we'll explore what goes on inside the .git directory; how it all ties back to a sometimes-baffling command line interface; and how well the core Git model withstands attempts to extend it such as Git's subprojects, Git Annex, and alternative user interfaces.
Presenter: Marvin Humphrey
Paper: "Git—A Stupid Content Tracker", by Junio C. Hamano (2006)