Git 02: The Tree

The nearest board the site has: git’s diff machinery, which compares two versions of a file. Every comparison it draws starts from the thing this stage builds, a version stored as a tree of fingerprints.
Before you start. Git 01: The Blob built the blob: a file’s bytes, named by the hash of a header plus those bytes, stored zlib-compressed under .git/objects. A blob has no file name and no folder. This stage supplies both. You need no new idea, only the one from last time: an object’s name is a fingerprint of its contents.