Branching Models
GitFlow, trunk and release branches as delivery constraints rather than Git preferences.
4 to work through
-
intermediate
A design platform in the mould of Canva moves 90 engineers off long-lived feature branches onto trunk-based development with a merge queue. Six weeks later the mean branch still lives four days and the trunk is no healthier. Review this change. What did they actually need to change?
2 min answer -
intermediate Multiple choice
A platform with many teams and frequent releases must choose a branching model. What decides it?
1 min answer -
intermediate Multiple choice
A product ships versioned software that customers install and run themselves. Three major versions are under support and security fixes must reach all of them. Which branching model fits?
2 min answer -
intermediate
Sixty engineers work on branches that live five days on average before merging. Estimate what that lifetime costs per year, and say which assumption dominates the error.
3 min answer
2 terms in this topic
Stacked Changes
Splitting one body of work into a chain of small dependent changes that each review and merge on their own, so branch lifetime is set by the size of …
practiceTrunk-Based Development
All developers integrate small changes into a single shared branch at least daily, keeping it always releasable.
Neighbouring topics
Delivery & Release Engineering
General material on getting a change from commit to production safely and often.
Pipeline Architecture
Stages, fan-out, caching, and the difference between a pipeline and a long script.
Build Reproducibility
Pinned inputs and hermetic builds, so one commit cannot produce two different artifacts.
Artifact Management
Immutable versioned outputs, promotion between repositories, and retention policy.
Environment Strategy
How many environments earn their cost, what each proves, and what none of them prove.
Continuous Integration Discipline
Integrating to the mainline daily, and the test speed and review culture that requires.
Deployment Strategies
Rolling, blue-green, canary and shadow, and the traffic and state each one assumes.
Progressive Delivery
Separating deploy from release, and exposing a change to users in controlled increments.
Rollback & Forward Fix
When reversing is genuinely possible, and designing so that it usually is.
Database Migration Under CD
Expand-contract, backwards-compatible schema change, and migrations that cannot roll back.
GitOps
Declared desired state in version control, with a reconciler closing the gap continuously.
IaC Modules & Drift
Reusable infrastructure modules, state ownership, and detecting what changed out of band.
Policy as Code
Encoding standards as automated admission and plan-time checks instead of review comments.
Pipeline Secrets
Short-lived credentials, workload identity, and why the CI system is a prime target.
Supply-Chain Provenance
SBOMs, signed artifacts, attestation, and knowing what actually went into a build.
Deployment Gates
Automated verification between stages, and the difference between a gate and a delay.
Flow Metrics
Work in progress, flow time and flow efficiency — where a change waits rather than moves.
Change Management vs CD
Reconciling CAB-era controls with continuous delivery without pretending either away.
Multi-Region Rollout
Ordering regions, bake time, and stopping a bad change before it becomes global.