~/talk

The Definitive Deep Dive into the .git Folder

Talkat Conf42 Python 2021 · on Thursday, 2021-05-27· [developer-experience, software-architecture]
slides:none on file

Walks the actual .git layout, unzips zlib objects to show commits, trees, blobs and proves how staging creates blob nodes while commits build tree+commit nodes. Demonstrates a simple unzipper program and a working Git Explorer visualization that shows parent/child links, tags and colors. Creates a bare remote, pushes branches and tags, uses git reflog to recover a dropped commit, runs git gc packs objects into .pack/.idx, and highlights that sensitive data still lives in unreferenced commits until garbage collection.

AI-written summary · about

  1. 0:00Introduction to .git
  2. 1:59New Git repository
  3. 3:04Git objects and hashes
  4. 8:08Commit, tree, and blob nodes
  5. 11:22Git history with Git Explorer
  6. 12:47Staging area and objects
  7. 15:39Amending commits and dangling objects
  8. 18:28Branches and detached HEAD
  9. 20:38Merging branches and refs
  10. 23:55Tags in Git
  11. 24:36Git server and remotes
  12. 27:04Git hooks automation
  13. 29:34Sharing hooks
  14. 30:34Git config hierarchy
  15. 33:25Excluding files with .gitignore
  16. 35:11Git index and staging
  17. 36:59Temporary files in .git
  18. 37:42Reflogs and lost commits
  19. 40:35Garbage collection and packed objects
  20. 42:03Backup and sharing repos
  21. 42:45Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.