--- title: Semantic Commit messages description: Configuring Renovate to use Semantic Commits --- # Semantic Commit messages To detect if your repository uses semantic commits, Renovate looks at the latest 10 commit messages in the base branch. It then uses [conventional-commits-detector](https://github.com/conventional-changelog/conventional-commits-detector) to determine what convention the commit messages follow. Renovate only detects Angular-style conventional commits, it ignores all other commit conventions. When Renovate finds Angular-style commits, Renovate will create commit messages and PR titles that look like this: - chore(deps): update eslint to v7.30.0 - fix(deps): update express to v4.17.1 Renovate uses the `chore` prefix by default. When you extend `config:base`, Renovate still defaults to `chore`, but will use the `fix` prefix for npm production dependencies (`devDependencies` still use `chore`). ## Manually enabling or disabling semantic commits You can override the default settings, and disable or enable semantic commits. If you want Renovate to use semantic commits: add `":semanticCommits"` to your `extends` array. If you want Renovate to stop using semantic commits, add `":semanticCommitsDisabled"` to your `extends` array. ## Changing the Semantic Commit type You can change the Semantic Commit type that Renovate uses. Say you want Renovate to use "chore" for every PR, you can add `":semanticCommitTypeAll(chore)"` to your `extends` array. PR titles and commit messages start with "chore(deps):" Or say you want to use "ci" for every PR, then you would add `":semanticCommitTypeAll(ci)"` to your `extends` array instead. PR titles and commit messages start with "ci(deps):" ## Changing the Semantic Commit scope If you don't like the default "deps" scope, you can use another word for the scope instead. For example, to set the scope to "package" instead, add the preset `":semanticCommitScope(package)"` to your `extends` array. If you want to _remove_ the semantic commit scope (e.g. use prefix `chore:` instead of `chore(deps):`), then add the preset `":semanticCommitScopeDisabled"` to your `extends` array.