2023-01-31 22:10:54 +00:00
|
|
|
`backport`
|
|
|
|
==========
|
|
|
|
|
|
|
|
`backport` is a command to help create backports of PRs. It backports a
|
|
|
|
provided PR from main on to a released version.
|
|
|
|
|
|
|
|
It will create a backport branch, cherry-pick the PR's merge commit, adjust
|
|
|
|
the commit message and then push this back up to your fork's remote.
|
|
|
|
|
|
|
|
The default version will read from `docs/config.yml`. You can override this
|
|
|
|
using the option `--version`.
|
|
|
|
|
|
|
|
The upstream branches will be fetched, using the remote `origin`. This can
|
2024-05-09 13:49:37 +00:00
|
|
|
be overridden using `--upstream`, and fetching can be avoided using
|
2023-01-31 22:10:54 +00:00
|
|
|
`--no-fetch`.
|
|
|
|
|
|
|
|
By default the branch created will be called `backport-$PR-$VERSION`. You
|
|
|
|
can override this using the option `--backport-branch`. This branch will
|
|
|
|
be created from `--release-branch` which is `release/$(VERSION)`
|
|
|
|
by default and will be pulled from `$(UPSTREAM)`.
|
|
|
|
|
|
|
|
The merge-commit as determined by the github API will be used as the SHA to
|
|
|
|
cherry-pick. You can override this using `--cherry-pick`.
|
|
|
|
|
|
|
|
The commit message will be amended to add the `Backport` header.
|
|
|
|
`--no-amend-message` can be set to stop this from happening.
|
|
|
|
|
|
|
|
If cherry-pick is successful the backported branch will be pushed up to your
|
|
|
|
fork using your remote. These will be determined using `git remote -v`. You
|
|
|
|
can set your fork name using `--fork-user` and your remote name using
|
|
|
|
`--remote`. You can avoid pushing using `--no-push`.
|
|
|
|
|
|
|
|
If the push is successful, `xdg-open` will be called to open a backport url.
|
|
|
|
You can stop this using `--no-xdg-open`.
|
|
|
|
|
|
|
|
Installation
|
|
|
|
============
|
|
|
|
|
|
|
|
```bash
|
|
|
|
go install contrib/backport/backport.go
|
|
|
|
```
|