Chore Commit for Maintenance Tasks

When and how to use the chore type in Conventional Commits. Covers dependency updates, configuration changes, and other maintenance tasks.

Scoped Commits

Detailed Explanation

The chore Type

The chore type covers maintenance tasks that do not modify source code or test files. It is the catch-all for changes that keep the project running but are not features, fixes, or documentation.

Common chore Commits

chore: update dependencies to latest versions
chore(deps): bump lodash from 4.17.20 to 4.17.21
chore(ci): add Node.js 20 to test matrix
chore(release): prepare v2.1.0 release
chore: regenerate lock file

What Belongs in chore

Task Type
Dependency updates chore or chore(deps)
CI/CD configuration chore(ci) or ci
Build script changes chore or build
License file updates chore
Editor config changes chore
Release preparation chore(release)
Gitignore updates chore

chore vs build vs ci

These types overlap. The Angular convention offers more specific types:

  • build: Changes to the build system (webpack, rollup, npm scripts).
  • ci: Changes to CI configuration (GitHub Actions, Jenkins, CircleCI).
  • chore: Everything else (deps, license, editor config).

If your project uses all three types, be consistent. If you prefer simplicity, chore can cover all maintenance tasks.

Version Impact

chore commits do not trigger a version bump. They are excluded from changelogs in most configurations. This is intentional — maintenance tasks are important for contributors but not relevant to consumers.

Dependency Update Conventions

For dependency updates, many projects use a scoped format:

chore(deps): bump express from 4.18.0 to 4.19.0
chore(deps-dev): bump jest from 29.0.0 to 29.1.0

The deps vs deps-dev scope distinguishes between production and development dependencies. Automated tools like Dependabot and Renovate generate commits in this format.

Use Case

Use chore commits for any maintenance work that does not affect the application's behavior: updating dependencies, modifying CI pipelines, changing editor configurations, updating license files, or preparing releases. This keeps the commit history organized and allows automated tools to filter out maintenance noise.

Try It — Conventional Commits Linter

Open full tool