在团队协作的开发过程中,代码的维护与更新显得尤为重要,这个过程其中一项重要的工作便是代码提交(Commit)。Commit 的信息应包含足够的详情,如何更好的遵循团队协作开发规范化是非常必要的。其中,commitlint 模块可以帮助我们实现一些检查这些问题的检测,@haaretz/commitlint-config 便是其中一种使用较为广泛的配置之一。
安装
可以使用 npm 包管理器来安装 @haaretz/commitlint-config:
npm install @haaretz/commitlint-config --save-dev
使用
安装完毕后打开项目的 package.json 文件,在其内新增:
"commitlint": { "extends": ["@haaretz"] }
即使用了非常便捷的规范检查的配置。对于 commit 时的信息,应该思考以下问题:
- 这个 commit 是否会导致代码走向不同?
- 是否以聚和意义的修改?
- 修改的类型是否与警告类型不一致?
- 是否有不正确的单词(如 type: "featrue")?
- 这个 commit 是否与当前更改的功能或Bug描述不符?
使用 commitlint 可以检查这些常见问题的存在,使用前需全局安装 commitlint 并初始化:
npm install -g commitlint echo '{}' > commitlint.config.js
然后就可以开始使用 commitlint 进行提交。
git commit -m "fix: corrected spelling"
可以直接通过此方法进行提交,也可以面对很多需要注意的有关标准的规范化提交。同时也可以继承或自定义配置。
下面我们通过示例代码来了解使用这个 npm 包的更多细节及其功能。
示例
在本地创建一个新项目。安装 @haaretz/commitlint-config 和其他依赖:
mkdir my-project && cd my-project npm init -y npm install --save-dev commitlint @commitlint/config-angular @haaretz/commitlint-config
在 package.json 中填写我们的配置:
"commitlint": { "extends": ["@haaretz/commitlint-config"] }
添加文件 commitlint.config.js(注意文件名的命名规范):
module.exports = { extends: ["@haaretz/commitlint-config"] }
创建新文件 test.js:
-- -------------------- ---- ------- --- ------ - ------------------ --- ------- - --- ---------------------- -------- ------- - ------------------ -------- - ----------------- ------- --------------------
使用 Git 管理此项目:
git init
在标准提交中验证此文件:
git add test.js git commit -m "feat(test): add new feature"
如果进一步了解其中细节以及自定义配置
如果上述内容仍不能够满足我们的逐渐高级的需求,@haaretz/commitlint-config 同样提供了灵活的自定义功能模块。
在需要增加自定义规范的前端项目代码中,可以选择添加配置文件 .commitlintrc.js。其中的内容有以下涵义:
-- -------------------- ---- ------- -------------- - - -------- ------------------------------- ------ - ------------ - -- --------- -------- ------ ------- -------- ----------- ------- -------- --------- -- --------------- --- -------- ----------------- ------------- -------------- -------------- - --
在此例中,可以使用更为复杂的自定义规范,如:
- added features
- changed behaviors
- deprecated code removals
- fixed bugs
- vulnerabilities avoidance
- performance improvements
完整的自定义规范详细文档请前往 npm 包 @haaretz/commitlint-config。
总而言之,使用 @haaretz/commitlint-config 将会更好地帮助我们在团队的开发中,更好的创建目录层次和编写代码。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60067356890c4f7277583c48