backport automatically backports GitHub pull requests to a release branch. It auto-detects the upstream repository from your fork's GitHub parent, so it works with any fork-based workflow.
backport expects to be run from within a Git clone of a forked repository.
$ backport --help
usage: backport [-f] [-c <commit>] [-r <release> | -b <branch>] <pull-request>...
or: backport [--continue|--abort]
backport attempts to automatically backport GitHub pull requests to a
release branch.
By default, backport will cherry-pick all commits in the specified PRs.
If you explicitly list commits on the command line, backport will
cherry-pick only the mentioned commits.
If manual conflict resolution is required, backport will quit so you
can use standard Git commands to resolve the conflict. After you have
resolved the conflict, resume backporting with 'backport --continue'.
To give up instead, run 'backport --abort'.
To determine what Git remote to push to, backport looks at the value of
the cockroach.remote Git config option. You can set this option by
running 'git config cockroach.remote REMOTE-NAME'.
Options:
--continue resume an in-progress backport
--abort cancel an in-progress backport
-c, --commit <commit> only cherry-pick the mentioned commits
-r, --release <release> select release to backport to
-b, --branch <branch> select the branch to backport to
-f, --force live on the edge
--help display this help
Example invocations:
$ backport 23437
$ backport 23389 23437 -r 1.1 -c 00c6a87 -c a26506b -c '!a32f4ce'
$ backport 23437 -b release-23.1.10-rc # backport to the 'release-23.1.10-rc' branch
$ backport --continue
$ backport --abort