在前端开发中,版本控制非常重要,因为它可以帮助团队成员协同工作并记录代码更新的历史。而 Git 是最常用的版本控制工具之一,而 Commit Message 则是 Git 中非常重要的数据之一,它记录了每次 Commit 中的更改记录和内容简述。当然,如果提交信息不规范,那么看到版本历史记录时就会很困惑。于是就有了一类工具—— Commit Lint,它可以帮助规范更改记录的格式。而在这里我们使用的就是一个非常好用的 npm 包: @crowdstrike/commitlint。
@crowdstrike/commitlint
在使用这个工具之前,我们需要先了解一下它能做什么。 @crowdstrike/commitlint 是一个可以帮忙检查提交信息的格式是否规范的 npm 包。它可以规范化 Git Commit Message,或者验证提交信息格式、类型和主题,从而帮助开发人员更好地维护代码变更记录。
安装与使用
我们可以通过 npm 包管理工具来安装 @crowdstrike/commitlint:
npm install --save-dev @commitlint/cli @commitlint/config-conventional
- @commitlint/cli:用于实现 @crowdstrike/commitlint 的命令行支持。
- @commitlint/config-conventional:用于配置和定义 Commit Message 的规范。
安装完这两个包后,我们需要在 package.json 文件中添加如下字段:
"commitlint": { "extends": [ "@commitlint/config-conventional" ] }
这样 @crowdstrike/commitlint 就可以基于此配置从提交消息中提取出必要的信息,并对其进行验证。然后我们可以 npm 运行命令来检查 Commit Message 是否符合规范:
echo 'My commit message' | npx commitlint
如果 Commit Message 合法,则会输出 Successfully linted!,否则输出相应的错误信息。
为使工具更易于使用,我们可以在配置文件中添加规则进行约束。在 @commitlint/config-conventional 包中有一些默认规则可供使用,当然我们也可以自定义。
添加自定义规则
我们可以在 commitlint.config.js 文件中添加自定义规则。
以团队中的格式为例,通常还会在提交信息中添加 Scope 标识符,它表示此次提交所要涉及到的内容,以方便更好的在版本控制中查找相应的 Commit Message。这时,我们就需要在配置文件中添加如下规则:
module.exports = { extends: ['@commitlint/config-conventional'], rules: { 'scope-enum': [2, 'always', ['frontend', 'backend']], }, };
这个规则指定了一个 Scope 的枚举。将枚举值添加到 commitlint.config.js 文件中,就能使用它们来指定提交信息的 Scope 属性了,像这样:
git commit -m "feat(frontend): 新增登录功能"
总结
@crowdstrike/commitlint 是一个非常实用的工具,它可以帮助我们规范化 Git Commit Message,或者验证提交信息格式、类型和主题,从而帮助我们更好地维护代码变更记录。在团队协作和管理中,这个工具能为我们带来积极的效益和帮助,我们应该多多使用它。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/110694