git-commits · git:20261030.e1f81dd · 2026-10-30 · sha256 f3e6eb2c16385bfb
git-commits git:20261030.e1f81ddA
Immutable. This exact content never changes and is served at /api/v1/blob/f3e6eb2c16385bfb.
--- description: Conventional commit messages that pass the local commit-msg hook alwaysApply: true --- # Git commits Only commit when the user asks. A pull request title uses the same first line. Line 1 is exactly: `<type>(optional-scope): <subject>` Types: `feat` | `fix` | `refactor` | `chore` | `docs` | `test` | `style` The subject is only the text after the colon. - Start it with a lowercase letter. Write "add", not "Add". - 72 characters or fewer. - Do not end it with a period. - Imperative verb. - One logical change. Pass the message via HEREDOC. - No `--no-verify`, and no amend of a pushed commit, unless the user asks. If more detail is needed, leave one blank line, then a body that says why. Never put the body on line 1. Good: ```text feat(ci): add semantic commit check The commit-msg hook rejects subjects that do not match this format. ``` Bad: ```text feat: Add a husky hook so generated commit messages follow the repo format. ```