npm 包 @kazanexpress/frontend-commitlint 使用教程

阅读时长 5 分钟读完

前言

在日常开发中,版本控制非常重要。Git 提供了一套完善的版本控制机制,而作为项目协作的一种简便规范,我们通常会在 Git 提交时添加 commit message,其实这个 commit message 是有一系列互相关联的规范的。

为了让所有参与协作的人员的提交行为更加协同一致,我们需要引入一种规范化工具——lint,而为了方便前端团队使用,前端团队常常选择使用一个叫做 commitlint 的 npm 工具。

介绍

commitlint 是一个可以帮助我们规范提交信息的库,它可以检查提交信息长度、是否有空格、格式等等。同时提供了一些预设的规则如 Angular、eslint、conventional 等,也支持自定义规则。

@kazanexpress/frontend-commitlint 是针对前端开发的一款 commitlint 规则库。它提供了一些基于约定俗成的前端开发的规范、强制检查格式错误并给出友好的提示。用它来规范 commit message,可让我们的版本控制更加有条不紊。

安装

我们可以在终端或者命令行窗口中输入以下命令来安装 @kazanexpress/frontend-commitlint:

配置

安装好之后,我们需要在项目根目录下添加 commitlint 配置文件:commitlint.config.js

可以通过 rules 来添加自定义规则,也可以通过 extends 来使用预设规则。需要注意的是,当 rules 和 extends 冲突时,rules 的优先级高于 extends,将会使用 rules 定义的规则。

如果需要针对某些文件夹或文件不进行规则的校验,可以使用 .commitlintrc.js 文件并设置相应的 ignores。

使用

在提交代码之前,您必须通过 commitlint 基于预设的规则进行提交信息的格式校验。我们可以通过以下命令在终端中运行 commitlint:

在提交时,commitlint 将通过 GIT_PARAMS 获取要提交的 commit message,然后在控制台输出相应的错误信息。

除了手动运行外,我们也可以将它加入到 Git hook,让它进行自动校验。

package.json 中添加以下代码:

在安装了 husky 之后,Git commit 的时候将会自动启动 commitlint,并进行验证,只有通过验证,才能 commit 成功。

示例

type(scope?): subject 为规范的提交信息:

  • feat(index):添加图片预览功能
  • fix(api):修复后端 API 接口逻辑问题
  • docs(readme):更新 README.md
  • refactor(code):重构代码结构

使用 @kazanexpress/frontend-commitlint,会强制实施这个规范,还可以定制规则、以及套用其他规范。例如,我们可以通过以下命令导出内置的规则:

得到的规则如下:

-- -------------------- ---- -------
-
  -------- -
    ---------------------------------
  --
  ------ -
    -------------------- --- --------- ---- -- -- ------ ----
    -------------- --- --------- ----------------- -- ---------------
    ------------ --- --------- -------- ------ ------- -------- ----------- ------- -------- ----------- -- -- ---- ---
    ------------ --- --------- ------------- -- --------
    ------------- --- --------- -- -----
    ------------- --- --------- --------- ------- --------- -- -- ----- ---
    ------------- --- --------- ------------- -- --------
    --------------- --- --------- ----------------- -- ---------------
    ---------------- --- -------- -- -----
  -
-

总结

使用 commitlint 可以使项目中的提交信息更加规范,提高 Git 的使用体验。@kazanexpress/frontend-commitlint 又是具有针对性的前端开发规范,让我们的前端协作能够更加有条不紊。希望本文介绍的配置和使用示例对您有所帮助,好的规范可以提升我们项目的成功率,感谢您的阅读!

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/kazanexpress-frontend-commitlint