前言
在前端开发中,我们通常会使用很多的npm包来帮助我们完成各种工作。而conventional-changelog-lint-config-lerna-scopes就是其中一个优秀的npm包,它可以帮助我们规范化版本控制和Changelog生成,提高我们的工作效率。接下来,本文将详细为您介绍conventional-changelog-lint-config-lerna-scopes的使用方法,包括配置和示例代码。
安装
在命令行中输入以下指令来安装conventional-changelog-lint-config-lerna-scopes:
npm install -g conventional-changelog-lint-config-lerna-scopes
配置
在安装完成后,我们需要对conventional-changelog-lint-config-lerna-scopes进行配置。在你的项目根目录下创建名为 .conventional_changelog_lint
的文件,然后在该文件中添加以下配置:
{ "extends": [ "@commitlint/config-conventional", "@commitlint/config-lerna-scopes" ] }
这里我们使用了两个扩展:@commitlint/config-conventional
和 @commitlint/config-lerna-scopes
。前者用于第一层验证commit信息是否符合conventional的格式,如type(scope): message,后者则用于检查lerna工作流中的包名。
下面是一个示例配置文件:
-- -------------------- ---- ------- - ---------- - ---------------------------------- --------------------------------- -- -------- - ------------ - -- --------- - ------- ------ ------- -------- ----------- ------- ------- -------- -------- -------- - -- ------------ --- --------- ---------------- ------------- --- --------- - -
此处我们新增了一些规则:type必须为enum中的值、type必须为小写、type字段必须存在等等。你可以根据自己的需求来添加更多规则。
使用
在完成配置后,我们就可以使用conventional-changelog-lint-config-lerna-scopes来规范化我们的Changelog了。在命令行中输入以下指令:
conventional-changelog-lint --from=<commit> --to=<commit>
其中,--from
和 --to
分别表示从哪个版本到哪个版本的Changelog,如:
conventional-changelog-lint --from=v1.0.0 --to=v2.0.0
运行该命令后,conventional-changelog-lint-config-lerna-scopes会自动根据提交的信息来生成规范化的Changelog。
示例代码
这里是一个简单的示例代码,它用于检查commit message是否符合规范:
-- -------------------- ---- ------- ----- - -------------- - - ------------------- ----- ------------- - -------------------------- ----- ------------------------- - --------------------------- ----- ------ - ---------------------------------------------- ----- ---- - -------------- --------------- ------- ------------------ -------- -------------------------------------------- -- - ----- --- - ------------------------ ----- -- ----------- --------- --- -------------------- -------------- --------- ---------- --------- -- -
我们使用 @commitlint/lint
进行commit message的验证,并使用 git-raw-commits
进行获取提交记录,最后对符合规范的提交记录生成 changelog文件。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055d1e81e8991b448dabdb