Skip to content

Build Your Own Git

Build a working subset of git from scratch — content-addressable object storage, trees and commits, refs and HEAD, the index, checkout planning, line diffs, and three-way merges. By the end you'll deeply understand Linus's elegant design and exactly what `git add`, `git commit`, `git checkout`, and `git merge` do under the hood.

intermediateFree5 hours18 lessons
Start learningor sign up to track progress

Curriculum

Loading reference solution…
Build Your Own Git