Commits reference their parents. Following these references reveals the change history.
Principles and uses
Compare branch references and methods for integrating commit history.
A branch references a commit rather than copying project files.
Fast-forward advances a reference, merge commits connect histories, squash combines changes, and rebase reapplies commits onto a new base.
Use it to choose PR integration methods and understand history and reversion differences.
Committing directly to main with automatic deployment can publish changes before a separate review.
Principles and uses
Explore working branches, independent review, and automated checks in solo development.
Collect changes into a reviewable unit before integrating them into main.
AI-generated code still needs requirement and behavior checks. Separate implementation from review and verify that tests detect faults.
Use it to introduce PRs and independent checks into a solo workflow.
Several developers work on short-lived branches and integrate their changes into a shared branch.
Principles and uses
Divide responsibilities among human review, AI review, automated checks, and merge queues.
Set review depth and required checks according to change impact.
Automate routine checks and focus human attention on high-impact changes. Merge queues validate integration order; provenance supports traceability.
Use it to improve review throughput and design area-specific approval rules.