Trunk-Based Development vs Long-Lived Branches
Give a real production-style example of using Trunk-Based Development vs Long-Lived Branches. Walk through the scenario end-to-end.
Answers use simple, clear English.
Audio N/AQuick interview answer
Scenario: Team merges daily to main; dark-launches checkout redesign behind flag. Implementation notes: Required checks; small PRs; flags for incomplete features.
Detailed answer
Scenario: Team merges daily to main; dark-launches checkout redesign behind flag. Implementation notes: Required checks; small PRs; flags for incomplete features. Core: Short-lived branches merge to main frequently; feature flags hide incomplete work. Long-lived release branches increase merge pain and drift. Real-time example: Team merges daily to main; dark-launches checkout redesign behind flag. Pros: Smaller PRs; continuous integration truly continuous. Cons: Needs solid CI and flag discipline. Common mistakes: Week-long feature branches without syncing main. Best practices: Required checks; small PRs; flags for incomplete features. Audience level: Mid-level.
Full explanation
Short-lived branches merge to main frequently; feature flags hide incomplete work. Long-lived release branches increase merge pain and drift.
Real example & use case
Team merges daily to main; dark-launches checkout redesign behind flag.
Pros & cons
Pros: Smaller PRs; continuous integration truly continuous. Cons: Needs solid CI and flag discipline.
Common mistakes
Week-long feature branches without syncing main.
Best practices
Required checks; small PRs; flags for incomplete features.
Follow-up questions
- How would you test Trunk-Based Development vs Long-Lived Branches?
- What metrics prove Trunk-Based Development vs Long-Lived Branches is healthy in prod?
- How does Trunk-Based Development vs Long-Lived Branches change at 10× traffic?