Back to Glossary
Git & Version Control

Trunk-Based Development

A source-control branching model where developers collaborate on code in a single branch called "trunk" (or main), avoiding long-lived feature branches.

Definition

In trunk-based development, developers commit directly to the main branch or use short-lived feature branches (lasting hours to a few days, not weeks). This model requires strong automated testing and CI/CD to maintain quality. It's favored by high-performing teams at Google, Facebook, and Microsoft because it enables true continuous integration and reduces merge conflicts.

Why It Matters

DORA research shows trunk-based development is a key predictor of high software delivery performance. It eliminates long-lived branch merge pain, ensures everyone works with the latest code, and supports continuous deployment. Feature flags enable releasing incomplete features safely.

Example

A developer creates a branch for a 2-hour fix, commits frequently, ensures all tests pass, and merges to main the same day. Large features are hidden behind feature flags until complete.

Related Terms

trunk-based developmentwhat is trunk-based developmentTBDtrunk based

Automate Code Review with diffray

Multi-agent AI system for code review. Automatically finds bugs, security vulnerabilities, and architecture issues.