Course 09 · Workflow
Git
Every version you have ever had.
The tool every team uses and almost nobody is taught. A terminal in the page, and a git whose object ids are the real ones.
0 of 16 lessons finished — nothing yet
The syllabus
16 lessons,
in the order they build on each other.
What git actually is
A database of snapshots, and the three places your work can be at any moment.
Your first commit
init, status, add, commit — and what each of them moves.
Reading history
log, show, and the fields a commit really has.
Blobs, trees and commits
Inside .git: content addressing, and why the same content always gets the same id.
The staging area
Why git has a middle place, partial staging, restore, and .gitignore.
Undoing things
amend, restore, reset soft/mixed/hard, revert — and which ones rewrite history.
Branches are pointers
branch, switch, HEAD, detached HEAD — forty bytes, not a copy of the code.
Merging
Fast-forward, three-way, the merge base, and what a merge commit records.
Conflicts
What git can and cannot decide, the markers, and finishing the merge.
Rebase
Replaying commits onto a new base, why the ids change, and the one rule.
Remotes
remote, push, fetch, pull, tracking branches — and why fetch is the safe one.
Working with other people
Branch, push, pull request, review, and keeping a branch up to date.
Rewriting history
Squash, cherry-pick, interactive rebase, and force-with-lease.
Tags and releases
Naming a commit people can come back to, and versions that mean something.
Messages, ignores and habits
A commit message worth reading, .gitignore, secrets, big files, and branch strategy.
Practice: a week on a team
One scenario, start to finish: branch, conflict, review, release.
Keep going
The other courses.
HTML
The document, the elements and the meaning behind them. Everything else on the web is layered on top of this.
CSS
Selectors, the box model, layout with flexbox and grid, and motion that has a reason to move.
JavaScript
Values, functions, the DOM, events and asynchronous work — written so you can debug it later.