Release Flow: How We Do Branching on the VSTS Team
Apr 19, 2018Edward Thomson

Summary
This post details the VSTS team's 'Release Flow' branching strategy, which combines trunk-based development with sprint-based releases. It explains the rationale behind choosing trunk-based development to avoid complex merge hell and why continuous deployment (like GitHub Flow) doesn't scale for large teams. The strategy involves a single master branch for daily development, with release branches created at the end of each sprint. Hotfixes are applied to master first and then cherry-picked into the current release branch, ensuring that production fixes are also incorporated into future development.