Cherry-pick a merged PR onto a release candidate branch and open a new PR. Use when asked to cherry-pick, backport, or port a PR to an rc-minor or rc-patch branch.
Use only a single agent session for the entire cherry-pick. Multiple sessions for the same cherry-pick have caused duplicate PRs in the past.
This skill expects two arguments:
rc-minor-fleet-v4.83.0, rc-patch-fleet-v4.82.1)fleetdm/fleet repoFetch the latest remote state
git fetch origin
Identify the merge commit — find the merge commit SHA for the source PR on main.
gh pr view <PR> --json mergeCommit --jq '.mergeCommit.oid'
Create a working branch from the target release branch:
git checkout -b cherry-pick-<PR_NUMBER>-to-<target-branch> origin/<target-branch>
Cherry-pick the merge commit using -m 1 (mainline parent):
git cherry-pick -m 1 <merge-commit-sha>
-m 1.Push and open a PR against the target branch:
git push -u origin HEAD
gh pr create \
--base <target-branch> \
--title "Cherry-pick #<PR_NUMBER> onto <target-branch>" \
--body "Cherry-pick of https://github.com/fleetdm/fleet/pull/<PR_NUMBER> onto the <target-branch> release branch."
Follow the established pattern:
Cherry-pick #<PR_NUMBER> onto <target-branch>
Cherry-pick of https://github.com/fleetdm/fleet/pull/<PR_NUMBER> onto the
<target-branch> release branch.
If the original commit has a Co-authored-by trailer, preserve it.
cherry-pick-<PR_NUMBER>-to-<target-branch>
Example: cherry-pick-41914-to-rc-minor-fleet-v4.83.0
git cherry-pick --continue.tools/release/backport-check.shThis file will grow as new patterns and constraints are established.