CLI tool for GitHub release management
npm install githubreleaseCLI tool for GitHub release management.
To install from npm:
``shell`
npm install -g githubrelease
To install from GitHub:
`shell`
npm install -g psyrendust/githubrelease
1. Setup a new [GitHub app token][newtoken]
2. Set your environment variable CONVENTIONAL_GITHUB_RELEASER_TOKEN to the token you just created
You can find more details here: [Setup token for cli][setup-token-for-cli].
: Show this message.
* -v: Display the version of this script.
* -f: Display the flags used when showing config.
* -l: Generate a changelog entry and save it to .
* -p: Push , , and tags to .
* -u: Update and branches from using rebase.
* -n: Do not display any prompts.
* -t: Do not trash the node_modules folder before running npm run test.
* -T: Do not create a git tag and do no run conventionalGithubReleaser.$3
* -c: Location of the . Defaults to CHANGELOG.md.
* -C: The NPM client to use. Defaults to npm.
* -m: The branch. Defaults to master.
* -d: The branch. Defaults to develop.
* -r: The push and pull from. Defaults to origin.
* -P: The preset style used to generate the changelog. Examples include [angular | jquery ...]. Defaults to [conventional-recommended-bump][conventional-recommended-bump].
* -s: Allows you to start at a specific step. Useful for when the script fails before completing all steps. See Available steps below.
* -b: The semver you would like to use for the release (default: patch). Can be: [ major | minor | patch | v0.0.0 ]$3
1. Update and branches from using rebase.
2. Push , , and tags to .
3. Run npm test
4. Rebase onto .
5. Make a copy of package.json to _package.json (also copy package-lock.json to _package-lock.json if it exists).
6. Temporarily bump the semver of package.json.
7. Save a changelog entry to .
8. Commit update to Git.
9. Reset package.json by moving _package.json to package.json (also reset _package-lock.json to package-lock.json if it exists).
10. Run npm version command, which bumps package.json and creates a tag. No git tag will be created if -T is passed.
11. Rebase onto .
12. Push , , and tags to .
13. Run [conventional-github-releaser][conventional-github-releaser] to create a release in GitHub.
14. Output landed message which contains the short sha of HEAD.$3
1. Update all branches
2. Push changes from all branches
3. Cut a release`shell
githubrelease -u
githubrelease -p
githubrelease -b patch
githubrelease -tTb minor
`Or just do it all in one command.
`shell
githubrelease -b patch
`Use
yarn instead of npm:`shell
githubrelease -b patch -C yarn
``[conventional-github-releaser]: https://github.com/stevemao/conventional-github-releaser
[conventional-recommended-bump]: https://github.com/stevemao/conventional-recommended-bump
[githubrelease]: https://github.com/psyrendust/githubrelease
[newtoken]: https://github.com/settings/tokens/new
[setup-token-for-cli]: https://github.com/stevemao/conventional-github-releaser#setup-token-for-cli