cherry-picker icon indicating copy to clipboard operation
cherry-picker copied to clipboard

🐍🍒⛏ Utility script for backporting/cherry-picking CPython changes from master into one of the maintenance branches.

Results 24 cherry-picker issues
Sort by recently updated
recently updated
newest added

Maybe I'm doing something wrong, but when I have used `cherry_picker --continue` I inevitably lose the title and description I would have ended up with had there not been any...

The option to set the PR remote does work with `cherry_picker --continue`, but currently needs to be specified explicitly, rather than being remembered from the original CLI invocation.

As @warsaw discovered the hard way on python/cpython#101024 , if pushing the branch to the selected (or default) remote fails for any reason (e.g. attempting to push to `upstream` instead...

bug

Before this change, cherry-picker used to loose the backported commit message and didn't pass anything to the `push_to_remote()` method which resulted in sending an API request to GitHub that had...

CLA signed

## Description Fixes #37 Draft because this still needs tests, testing, and documentation (documentation probably won't be added here until this solution is accepted). The proposed solution for storing user...

CLA signed

I know that this is a tool primarily for CPython but I found myself in a use case where I could benefit from cherry-picker's help but the branch name I...

When trying to backport [this PR](https://github.com/python/cpython/pull/92899), miss-islington failed and advised running `cherry_picker` from the CLI. When running ``cherry_picker 067597522a9002f3b8aff7f46033f10acb2381e4 3.11`` It failed with this traceback: ``` ~/projects/cpython/3.11 [3.11|✔] $ Doc/venv/bin/cherry_picker...

``` $ python -m cherry_picker e6d1aa1ac65b6908fdea2c70ec3aa8c4f1dffcb5 3.10 3.9 Now backporting 'e6d1aa1ac65b6908fdea2c70ec3aa8c4f1dffcb5' into '3.10' Switched to a new branch 'backport-e6d1aa1-3.10' Branch 'backport-e6d1aa1-3.10' set up to track remote branch '3.10' from 'upstream'....

At this point(where we have `--pr-remote`, `--[no-]push`, `--upstream-remote` (#35), and `--no-auto-pr` (#36) flags, it seems worth considering adding some way to configure user preferences on a global and perhaps local...

I think with https://help.github.com/articles/checking-out-pull-requests-locally/ and https://gist.github.com/piscisaureus/3342247#gistcomment-1566295 cherry-picker could do better and even backport rebase merges and normal merge commits.