docs(core): expand git conventions and add commit message template

## Why
The existing git.md was thin — missing atomicity, working-state, and
trailer guidance that belong in any professional git workflow. No commit
message template existed, making the expected format implicit and
inconsistent across sessions.

## Impact
- git.md is now the canonical reference for commit hygiene rules
- commits.md provides a structured template (Why / Implementation Notes /
  Impact / Git Trailers) that agents and humans can follow
- AGENTS.md cross-references commits.md so it is discoverable at session
  start

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-27 13:53:45 +00:00
parent 4be35613a6
commit cd33ed9331
3 changed files with 86 additions and 4 deletions

View File

@@ -1,10 +1,13 @@
# Git conventions
- Never skip hooks with `--no-verify`. Hooks are the automated QA gate; bypassing them breaks the pipeline.
- Never force-push main or master.
- Commit messages explain why, not what. Written for both humans and changelog generators.
- Never force-push `main` or `master`.
- Keep commits atomic. Each commit should represent one logical, independently reviewable and reversible change.
- Ensure every commit leaves the repository in a working state (buildable/testable where practical).
- Commit messages explain **why**, not **what**. The diff already documents what changed.
- Never commit secrets, credentials, or environment-specific config.
- Use conventional commits: `feat:`, `fix:`, `docs:`, `chore:`, `refactor:`, `test:`
- Use Conventional Commits (`feat:`, `fix:`, `docs:`, `chore:`, `refactor:`, `test:`, etc.).
- Reference related issues, ADRs or design documents using Git trailers when applicable.
## Submodules