Curriculum
Eight tracks, from what a commit actually is to rescuing work an agent destroyed. Each lesson has a demo to watch, a practice gym, and a short graded test that is the only thing that marks it complete.
22 lessons
Objects
0/3What is a commit, really?
What a repository actually holds: blobs, trees and commits, addressed by the hash of their contents.
The three trees
0/3Where does my work actually live?
The working tree, the index and HEAD — and the two gaps between them that every everyday command moves things across.
History
0/2How do I find my way around?
Reading what happened: log, ranges, and the ancestry notation people quote without being sure of.
Branching and merging
0/3How do two lines of work come back together?
Fast-forward against a true merge, and what a conflict is really telling you.
Rewriting
0/3How do I change what I already recorded?
Amend, reset, rebase, cherry-pick and revert — changing history, and knowing when not to.
Remotes
0/2What does the other repository know?
Tracking branches, fetch against pull, and what a force-push does to somebody else.
Investigation
0/1When did this break?
Finding when a bug arrived, with bisect, blame and the pickaxe.
Recovery
0/5How do I undo what just happened?
Your agent force-pushed, squashed forty commits, committed a secret, abandoned a rebase. Get the work back — and learn where the deadline is.
- Undo a hard reset10 min
Your agent ran `reset --hard`. The commits are still there.
- Rescue a deleted branch10 min
Deleting a branch removes a name, not the work.
- Finish an abandoned rebase12 min
An agent stopped halfway. The repository is not broken.
- Purge a committed secret12 min
Deleting it in a new commit leaves it in every earlier one.
- When it is genuinely too late9 min
Garbage collection is real, and it is the end of the line.