前言
在一个团队中,为了保证代码质量和风格的一致性,常常会采取提交规范。而 commitlint 可以帮助我们对提交信息进行规范化控制。本文将介绍如何使用 npm 包 @pob/commitlint-config 来定义一个适合自己团队的提交规范。
什么是 @pob/commitlint-config
@pob/commitlint-config 是一个开源的 npm 包,它提供了一系列预设的提交规范配置,以便我们可以便捷地定制团队的提交规范。同时,它是基于 commitlint 进行封装的,因此在使用时也需要一定的了解 commitlint 的相关知识。
安装和配置
首先,我们需要在项目中安装 @pob/commitlint-config:
npm install --save-dev @pob/commitlint-config
随后,在项目中添加一个名为 commitlint.config.js 的文件,并将如下代码添加进去:
module.exports = { extends: ['@pob/commitlint-config'] };
这样我们就成功地将 @pob/commitlint-config 配置到了项目中。
规范配置
@pob/commitlint-config 提供了多种规范配置选项,可以通过 extends 字段来引用。下面我们详细介绍一下这些选项。
@pob/commitlint-config
这是默认的规范配置选项,它包含以下规则:
type-enum
:提交的 type 必须属于指定的值;type-case
:提交的 type 必须使用指定的大小写风格;subject-case
:提交的 subject 必须使用指定的大小写风格;subject-empty
:提交的 subject 不应为空。
我们可以使用以下命令来进行测试:
echo 'feat: 添加一个新功能' | npx commitlint
如果您看到了“✖ subject may not be empty”这样的提示,则说明您已经成功正确地配置了 @pob/commitlint-config。
@pob/commitlint-config-angular
这是一个专门为 Angular 项目准备的规范配置选项。它包含以下规则:
type-enum
:提交的 type 必须属于指定的值;type-case
:提交的 type 必须使用指定的大小写风格;subject-case
:提交的 subject 必须使用指定的大小写风格;subject-min-length
:提交的 subject 必须至少包含指定的字符数;subject-max-length
:提交的 subject 的长度不能超过指定的字符数;subject-empty
:提交的 subject 不应为空。
我们可以使用以下命令来进行测试:
echo 'feat(模块名称): 添加一个新功能' | npx commitlint --config @pob/commitlint-config-angular
@pob/commitlint-config-conventional
这是一个符合 Conventional Commits 规范的规范配置选项。它包含以下规则:
type-enum
:提交的 type 必须属于指定的值;type-case
:提交的 type 必须使用指定的大小写风格;type-empty
:提交的 type 不应为空;scope-case
:提交的 scope 必须使用指定的大小写风格;subject-case
:提交的 subject 必须使用指定的大小写风格;subject-min-length
:提交的 subject 必须至少包含指定的字符数;subject-max-length
:提交的 subject 的长度不能超过指定的字符数;subject-empty
:提交的 subject 不应为空。
我们可以使用以下命令来进行测试:
echo 'feat: 添加一个新功能' | npx commitlint --config @pob/commitlint-config-conventional
自定义规范配置
除了使用 @pob/commitlint-config 提供的规范配置选项外,我们还可以自定义我们自己的规范配置。例如:
-- -------------------- ---- ------- -------------- - - ------ - ------------ - -- --------- -------- ------ ------- -------- ----------- ------- ------- -------- --------- -- --------------- --- --------- ---------------- - --
在以上规范配置中,我们定义了提交的 type 可以包含 feat、fix、docs、style、refactor、perf、test、chore、revert 这些值中的一个,同时定义了 subject 应该使用 sentence-case 风格的大小写。
总结
通过本文的介绍,我们了解了如何使用 npm 包 @pob/commitlint-config 来定义一个适合自己团队的提交规范,并详细地介绍了各个规范配置选项的含义和使用方法。希望这篇文章可以帮助到我们更为便捷地管理项目提交信息。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedbc48b5cbfe1ea06119e5