这个项目能做什么
commitlint 是一个用于检查提交信息的开源工具。它验证提交信息是否符合 Conventional Commits 格式,通常写作 `type(scope?): subject`,其中 scope 是可选的,并支持使用 `/`、`\` 和 `,` 等分隔符的多个 scope。常见类型包括 build、chore、ci、docs、feat、fix、perf、refactor、revert、style 和 test,并且可以通过配置进行自定义。
该项目提供了一个主要 CLI,安装为 `@commitlint/cli`,以及一个编程 API。配置会自动从以下文件中读取:`.commitlintrc`、`.commitlintrc.json`、`.commitlintrc.yaml`、`.commitlintrc.yml`、`.commitlintrc.js`、`.commitlintrc.cjs`、`.commitlintrc.mjs`、`.commitlintrc.ts`、`.commitlintrc.cts`、`.commitlintrc.mts`、`commitlint.config.js`、`commitlint.config.cjs`、`commitlint.config.mjs`、`commitlint.config.ts`、`commitlint.config.cts`、`commitlint.config.mts`,或者 `package.json` 或 `package.yaml` 中的 `commitlint` 字段。
可以安装并扩展共享配置,包括 @commitlint/config-angular、@commitlint/config-conventional、@commitlint/config-lerna-scopes、@commitlint/config-nx-scopes、@commitlint/config-patternplate 和 @commitlint/config-workspace-scopes。自定义可共享配置应遵循 `commitlint-config-*` 的命名模式,以便在 `extends` 字段中通过短名称引用。
API 包包括 format、lint、load 和 read,允许以编程方式检查提交信息、加载配置,以及从指定范围或上次编辑中读取信息。其他工具包括 commitizen 适配器和提示 CLI。
入门指南涵盖本地设置(使用 husky 在提交时检查信息)和 CI 设置(在 CI 构建期间检查信息)。该项目以 monorepo 形式开发,要求 Node.js LTS >= 22.12.0 和 git >= 2.13.2。它根据 MIT 许可证发布。相关项目包括 conventional-changelog、commitizen 和 create-semantic-module。
评论
0 评分人数达到10人后显示
登录后参与讨论。