Simple CLI to release changelogs. CICD-friendly.
npm install releasetReleaset is designed to automatically generate changelogs for your repositories by CLI.
- Auto Changelogs: Generate changelogs based on git tag and git commit history.
- CICD Friendly: Embed the command in your CICD work flow to update changelogs automatically.
- Pre-release Friendly: Support pre-relase and production publishing.
- Support Publish Note: Update .releaset/publish_note.json manually set publish note for each version.
Ensure your project uses semantic versioning for git tags.
Releaset uses this command to generate logs:
```
npx releaset --projectUrl https://github.com/AlfredChow2338/releaset --title @Releaset --filterCommit Release
Project applied pre-release practice and want to publish production logs in CHANGELOG.md:``
npx releaset --projectUrl {PROJECT_URL} \
--title {LOG_FILE_TITLE}
--prTag {PR_TAG}
Project applied pre-release practice and publish pre-release logs in CHANGELOG_PR.md:``
npx releaset --projectUrl {PROJECT_URL} \
--title {LOG_FILE_TITLE}
--prTag {PR_TAG} \
--pr
Include tags that contain specific keywords:
``
npx releaset --projectUrl {PROJECT_URL} \
--title {LOG_FILE_TITLE}
--filterTag {FILTER_TAG}filterTag
Note: Support version >= 0.1.9 can be more than one, which has to be separate by commas (eg. tag1,tag2,tag3)
Exclude tags that contain specific keywords:
``
npx releaset --projectUrl {PROJECT_URL} \
--title {LOG_FILE_TITLE}
--filterOutTag {FILTER_TAG}filterOutTag
Note: Support in version >= 0.2.0 can be more than one, which has to be separate by commas (eg. tag1,tag2,tag3)
Output logs to specified directory eg. packages/foo:``
npx releaset --projectUrl {PROJECT_URL} \
--title {LOG_FILE_TITLE}
--outDir packages/foo
No installation is needed. We suggest directly use the npx releaset command for ease.
The script will create a changelog file:
- Pre-release mode: CHANGELOG_PR.mdCHANGELOG.md
- Production mode:
info.json will also be created to record all releaset information. No change is needed for this configuration file.
will be created if arguements ver and note are passed. You can manually update
publish_note.json to list the publish note in each version.JSON Structure:
[TAG]: [PUBLISH_NOTE]`