Git and version control
Snapshots, not diffs
A commit is a snapshot of the whole tree plus a pointer to its parent. A branch is a movable label on one commit. Once you hold those two facts, branching, merging and rebasing stop being magic.
Cloud and AWS
Identity first, state second
In the cloud you never hold the machine — you hold a policy and a record of what should exist. Every failure is either 'who am I' (credentials) or 'what exists' (state), and the CLI answers both.
Terraform
Declare, plan, apply
Terraform compares what you declared against what it recorded and proposes the difference. The state file is the memory of that comparison — lose it and you are adopting resources by hand.
CI/CD pipelines
A contract with the repository
A pipeline is a written promise: every push gets built, tested, and only then deployed. It lives in the repository, so it is reviewed like code and versioned with the thing it ships.
The capstone path
One path, end to end
The capstone is the exam for the whole path: build an image, declare the workload, commit the desired state and let a controller reconcile it. Nothing new — the same tools, in the order production uses them.