Test/Demo Repo for experimenting and demoing auto-releasing using [corp]Semantic Release
This project uses the corp-semantic-release module to manage project versioning and releases. Instead of manually updating the changelog and package version, just provide meaningful commit messages, using the format described below and versioning will automatically be performed during the CI builds.
# Commit message format:
# [task-type]([affected-project-aspect]): [issue-id]? - [description]
# Examples:
feat(app): US12345 - Added new link in footer
chore(build): Updated istanbul reporting type
style(app): Updated eslint rules to latest version and applied formatting changes
Note: By default, commitizen uses angular-centric scopes ($location, $browser, $compile, etc) so we use cz-customizable to allow us to override them and define our own.
In addition this project supports commitizen and a local commitizen install/npm script is available for use if command-line git is your thing.
This project uses Husky to execute the following git hooks:
- pre-commit: Validate commit message format (as per semantic release commit message rules)
- pre-push: Run linter to ensure no javascript lint errors exist in commits