Edit on GitHub
Mattermost cherry-pick process
The self-managed releases are cut based off of the Mattermost Cloud release tags (e.g Mattermost Server v6.3 release was based off of
cloud-2021-12-08-1 Cloud release tag) in the server, webapp, enterprise, and api-reference repos. See the Handbook release process for more details.
The Mobile and Desktop app release branches are based off of
When your PR is required on a release branch (e.g. for a dot release or to fix a regression for an upcoming release), you will follow the cherry-picking process.
- Make a PR to ‘master’ like normal.
- Add the appropriate milestone and the
- When your PR is approved, it will be assigned back to you to perform the merge and any cherry picking if necessary.
- Merge the PR.
- An automated cherry-pick process will try to cherry-pick the PR. If the automatic process succeeds, a new PR pointing to the correct release branch will open with all the appropriate labels. If there are no additional changes from the original PR for the cherry-pick, it can be merged without further review.
- If the automated cherry-pick fails, the developer will need to cherry-pick the PR manually. Cherry-pick the master commit back to the appropriate releases. If the release branches have not been cut yet, leave the labels as-is and cherry-pick once the branch has been cut. The release manager will remind you to finish your cherry-pick.
- Set the
CherryPick/Done label when completed.
- If the cherry-pick fails, the developer needs to apply the cherry-pick manually.
- Cherry-pick the commit from
master to the affected releases. See the steps below:
- Run the checks for lint and tests.
- Push your changes directly to the remote branch if the check style and tests passed.
- No new pull request is required unless there are substantial merge conflicts.
- Remove the
CherryPick/Approved label and apply the
- If the PR needs to go to other release branches, you can run the command
/cherry-pick release-x.yz in the PR comments and it will try to cherry-pick it to the branch you specified.
If you are the second reviewer reviewing a PR that needs to be cherry-picked, do not merge the PR. If the submitter is a core team member, you should set the
Reviews Complete label and assign it to the submitter to cherry-pick. If the submitter is a community member who is not available to cherry-pick their PR or can not do it themselves, you should follow the cherry-pick process above.