DevOps
Intermediate
What is Trunk-Based Development?
A source control strategy where developers integrate small changes directly into the main branch frequently, often multiple times per day.
Trunk-based development minimizes merge conflicts and enables continuous integration by having all developers commit to a single shared branch (trunk/main). Short-lived feature branches (lasting hours, not days) are permitted but must merge quickly. This approach requires strong automated testing, feature flags for incomplete work, and code review practices. It enables continuous deployment since the trunk is always in a deployable state. Google, Facebook, and other tech giants practice trunk-based development at massive scale. It contrasts with GitFlow where long-lived branches can diverge significantly.