commitlint

Follow the commit rules your repository already enforces.

If your repository has a commitlint config (commitlint.config.js, .commitlintrc.json or any other form commitlint supports, or a "commitlint" key in package.json), gitmit loads it with commitlint itself. Presets (extends), plugins and parser settings behave exactly as in your commit-msg hook.

  • Your rules shape the suggestions. Error-level type-enum, scope-enum, header-max-length and body-max-line-length rules narrow gitmit's options. Where gitmit's config also sets them, the stricter value wins.
  • Every suggestion is linted. A suggestion that fails is sent back to the model along with the exact rule it broke, for up to 3 attempts in total. You only see messages that pass.
  • Warnings don't block. Rules at warning level are ignored.

If your commitlint config extends a preset that isn't installed (for example @commitlint/config-conventional), gitmit says so. Install your repository's dependencies, or set "commitlint": false to opt out.