This repository bootstraps itself: It uses its own templates (templates/*) applied to root files (.gitmessage, CONTRIBUTING.md, etc.) and provides reusable tooling for other projects.
- Executable hooks to enforce Conventional Commits
- Templates you can copy to another project
- Self-documenting examples: Root files show the templates in action
cp templates/.gitmessage.template .gitmessage
cp templates/CONTRIBUTING.template.md CONTRIBUTING.md
cp templates/CODESTYLE.template.md CODESTYLE.md
cp templates/.gitattributes.template .gitattributescp hooks/commit-msg .git/hooks/commit-msg
chmod +x .git/hooks/commit-msg
# Copy validator (POSIX sh recommended)
mkdir -p scripts
cp scripts/verify-commit-msg.sh scripts/git config commit.template .gitmessageThe root files are generated from templates:
.gitmessage←templates/.gitmessage.templateCONTRIBUTING.md←templates/CONTRIBUTING.template.mdCODESTYLE.md←templates/CODESTYLE.template.md
This demonstrates the templates work and provides a live example.
This toolkit implements and enforces the Conventional Commits specification with:
Executable validation of commit messages Stricter rules: 50-char subject limit, specific allowed types Complete templates: Issue templates, code style guides Batteries-included: Ready-to-use commit hooks and configurations
What's the same: The commit format <type>(scope): <subject> and core types (feat, fix, docs, etc.) align with the spec.
What's different: We add tooling, validation, and stricter rules.
See Quickstart above.
git submodule add <url> commit-guidelines
# Then copy templates as neededgit subtree add --prefix commit-guidelines <url> main --squash- The commit hook must be manually installed in
.git/hooks/ - Configure your editor to follow CODESTYLE.md rules
- See CONTRIBUTING.md for how this repo follows its own rules
See LICENSE.