diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..54df662 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,30 @@ +# Contributing + +## Commit conventions + +This project uses Conventional Commits. Every commit must have a scope: + +```text +type(scope): imperative summary +``` + +The project currently uses these commit types: + +- `feat`: adds user-visible functionality +- `fix`: corrects an incorrect or unsafe behavior +- `refactor`: changes internal structure without changing intended behavior +- `docs`: changes documentation only +- `meta`: changes project conventions, repository metadata, or contribution files +- `build`: changes installation, packaging, or deployment integration + +The project currently uses these scopes: + +- `apt`: APT and Debian package-manager behavior +- `hook`: APT hook configuration and invocation wiring +- `zfs`: ZFS selection, snapshot naming, and retention behavior +- `conf`: Runtime configuration parameters and defaults +- `docs`: README and explanatory documentation + +Add a new type or scope to this document before using it. Keep commit subjects +concise and imperative. Commit bodies should explain the motivation and the +resulting behavior, with body lines no longer than 72 characters.