Branching & Integration
Branching is where Git becomes more than a save button. This chapter covers how lines of work split, rejoin, conflict, and become release points.
Branches in a Nutshell
Branch names, HEAD, commit graphs, and why making a branch is cheap.
Switching & Checkout
Moving between branches, detached HEAD, clean working trees, and when checkout still appears.
Merging
Fast-forward merges, true merge commits, merge bases, and how Git combines histories.
Merge Conflicts
Conflict markers, resolution workflow, mergetools, index stages, and habits that reduce pain.
Rebasing
Replay, interactive rebase, squashing, autosquash, and the line between local cleanup and public rewriting.
Cherry-Pick & Patch Flow
Moving one change without merging a whole branch, plus the tradeoffs of patch-based integration.
Tags & Releases
Lightweight tags, annotated tags, signed tags, version labels, and release points in history.