docs/guides/branching-strategy.md
Cherry Studio implements a structured branching strategy to maintain code quality and streamline the development process.
Current model.
mainis the default branch for active development — submit features, refactors, optimizations, and fixes for the current codebase here. Thev1branch is the maintenance line for the shipped v1 release: its hotfixes and subsequent v1 releases go there viahotfix/*, targetingv1(notmain). A v1 fix does not auto-carry tomain; if the same bug exists onmain, open a separate forward-port PR targetingmain. (v1 and v2 code currently coexist onmain— expect large, breaking changes.) The generic flow below predates this phase; where it conflicts, this note wins.
main: Main development branch
release/*: Release branches
main branchFor details about the testplan branch used in the Test Plan, please refer to the Test Plan.
When contributing to Cherry Studio, please follow these guidelines:
Feature Branches:
main branchfeature/issue-number-brief-descriptionmainBug Fix Branches:
main branchfix/issue-number-brief-descriptionmainDocumentation Branches:
main branchdocs/brief-descriptionmainHotfix Branches:
v1 branchhotfix/issue-number-brief-descriptionv1, not main. A v1 fix does not auto-carry to main — if the same bug exists on main, open a separate forward-port PR targeting mainRelease Branches:
main branchrelease/version-numbermain and tag with versionmain; v1 hotfixes and subsequent v1 releases go to the v1 branch (see the note at the top). A v1 fix is not auto-carried to main — forward-port it with a separate PR if the bug also exists on mainmain changes before submitting