changelog
changelog
Prepend release notes to CHANGELOG.md
, create one if it doesn't exist, and commit the changes.
Options
Flag | Type | Description |
---|---|---|
--dry-run , -d | Boolean | Report what command will do but do not actually do anything |
--no-version-prefix | Boolean | Use the version as the tag without the 'v' prefix. WARNING: some plugins might need extra config to use this option (ex: npm) |
--name | String | Git name to commit with. Defaults to package definition for the platform |
--email | String | Git email to commit with. Defaults to package definition for the platform |
--from | String | Tag to start changelog generation on. Defaults to latest tag. |
--to | String | Tag to end changelog generation on. Defaults to HEAD. |
--title | String | Override the title used in the addition to the CHANGELOG.md. |
--message , -m | String | Message to commit the changelog with. Defaults to 'Update CHANGELOG.md [skip ci]' |
--base-branch | String | Branch to treat as the base branch |
--quiet , -q | Boolean | Print only the result of the command |
Examples
Generate a changelog from the last release to head
auto changelog
auto changelog
Generate a changelog across specific versions
auto changelog --from v0.20.1 --to v0.21.0
auto changelog --from v0.20.1 --to v0.21.0
Configurable Options
You can configure some of the options for the changelog
command in the .autorc
.
message
Example .autorc
:
{ "changelog": { "message": "string" } }
{ "changelog": { "message": "string" } }
⚠️ This should be run before you version your project so the
CHANGELOG.md
changes are committed before the release gets tagged.
Changelog Titles
You can customize the changelog titles and even add custom ones. To see configuration go here.
Additional Release notes
Sometimes a PR title is just not enough to capture what a user should know about that PR. That's why we've included the ability to put extra release notes right in your PRs. All you have to do is add a Release Notes
section in your PR.
Take the following PR body:
# What Changed Change `shipit` behavior. ## Release Notes `auto shipit` will only ship to `latest` on the base branch ([which is configurable]()). If ran locally or from a PR it will create a `canary` release that doesn't interfere with your `latest` release.
# What Changed Change `shipit` behavior. ## Release Notes `auto shipit` will only ship to `latest` on the base branch ([which is configurable]()). If ran locally or from a PR it will create a `canary` release that doesn't interfere with your `latest` release.
This will create a special section at the top of the changelog that collects all the additional release notes from merged PRs. Below is a sample of what it might look like.
v5.0.0 (Sat May 04 2019)
Release Notes
From #371
auto shipit
will only ship to latest
on the base branch (which is configurable). If ran locally or from a PR it will create a canary
release that doesn't interfere with your latest
release.
💥 Breaking Change
- shipit will publish a canary locally when not on
baseBranch
#371 (@hipstersmoothie)
Authors: 1
- Andrew Lisowski (@hipstersmoothie)