semantic-release-conventional-commits

3.0.0 • Public • Published

Semantic Release Conventional Commits

Greenkeeper badge

Build Status Coverage Status

This is an analyzeCommits plugin for semantic-release. semantic-release-conventional-commits can be used to detect all of the conventional commit message styles.

The commit analyzer that ships with semantic-release only catches fix and feat commits (#12).

To use this plugin, add the following to package.json:

"release": {
  "analyzeCommits": "semantic-release-conventional-commits"
}

Configuration

By default, the behavior of this analyzer is very similar to the analyzer that ships with semantic-release. In addition to fix, feat and BREAKING CHANGE: support, the following messages create the corresponding releases:

  • minor
    • feat
    • chore
  • patch
    • fix
    • docs
    • refactor
    • style
    • test

You can also configure additional behavior in package.json as follows:

"release": {
  "analyzeCommits": {
    "path": "semantic-release-conventional-commits",
    "majorTypes": ["major", "breaking"],
    "minorTypes": ["feat", "minor"],
    "patchTypes": ["fix", "patch"],
    "mergePattern": "/^Merge pull request #(\\d+) from (.*)$/",
    "mergeCorrespondence": "['id', 'source']"
  }
}

Which would cause major releases on messages with a major or breaking type, minor releases on messages with a feat or minor type, and patch releases on messages with a fix or patch type.

The mergePattern and mergeCorrespondence allow you to detect a merge commit and use the first line of the body as the header to determine the release type.

Note: configuring the type behavior will override the default type detection behavior.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 3.0.0
    2,832
    • latest

Version History

Package Sidebar

Install

npm i semantic-release-conventional-commits

Weekly Downloads

3,064

Version

3.0.0

License

ISC

Unpacked Size

8.34 kB

Total Files

6

Last publish

Collaborators

  • elliotttf