Skip to content

create a cherry-pick scripts for release process#4432

Draft
jgao54 wants to merge 1 commit into
mainfrom
cherry-pick-script
Draft

create a cherry-pick scripts for release process#4432
jgao54 wants to merge 1 commit into
mainfrom
cherry-pick-script

Conversation

@jgao54

@jgao54 jgao54 commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

This cherry-pick executes the following steps:

  1. fetch the release tag and the cherry-pick commit
  2. lazily create release branch release/ if it doesn't exist
  3. create cherry-pick branch cherry-pick- off the HEAD of release/ branch and cherry-pick the commit to it
  4. wait for user to handle merge conflicts (if conflict detected)
  5. push the cherry-pick branch and open a github compare link against it

Notes:

  • by default, release tags are created against main branch. When cherry-pick script is used, release tags should be created against the release branch (i.e. release/<release-tag>) the cherry-pick is intended for.
  • cherry-picking multiple commits against the same release branch is supported; it just requires running the script multiple times sequentially.
  • another benefit for using release branch for cherry-picks is to make the changes safer. release branch CI can be used to build more confidence over complex reverts / forward fixes.

Test: ran script locally to test a few scenarios:

  • happy-path flow
  • merge conflict handling
  • script exits when CP commit is invalid (i.e. already in release branch history)

TODO: validate on Linux

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant