conventional-changelog-config-spec 是一款 npm 包,用于帮助前端开发者生成符合约定式提交规范(Conventional Commits)的 change log,方便开发者了解项目版本更新的详细内容以及变化。
约定式提交规范(Conventional Commits)
约定式提交规范是一种结构化的提交信息的方法,旨在解决协作式开发中提交信息的表达不一致、难以理解等问题。该规范的格式为:
<type>[可选的作用域]: <description> [可选的正文] [可选的脚注,通常用于关联 issues]
其中,type
代表提交的类型,比如 feat
(新功能)、fix
(修复问题)、docs
(文档修改)、style
(代码样式修改)等;description
表示本次提交的简短描述,要求使用英文动词开头;作用域、正文和脚注等可选项根据实际需求添加。
例如:
feat(login): add password reset feature Add password reset link on login page for users who forget their passwords. Closes #123
可以看出,这样的提交信息非常清晰、易于理解。
安装和配置 conventional-changelog-config-spec
安装
在项目中使用 npm 或 yarn 安装:
npm install conventional-changelog-config-spec --save-dev
或者
yarn add conventional-changelog-config-spec --dev
配置
在项目根目录新建 .conventional-changelog
文件夹,并在其中创建 config.js
文件,配置需要的信息,例如:
-- -------------------- ---- ------- -------------- - - ------ - - ----- ------- -------- ---------- -- - ----- ------ -------- ---- ------ -- - ----- -------------- -------- -------------- -- - ----- -------- -------- -------- -- - ----- ----------- -------- ----- ------------ -- - ----- ------- -------- ------------ ------------- -- - ----- ------- -------- --------------- -- - ----- ------- -------- ------- -- - ----- -------- -------- ------ ------- -- - ----- ----- -------- ----------- ------------ -- - ----- -------- -------- -------- -- - ----- --------- -------- --------- -- -- ------- - - ----- ------------- ------------ ---------- -------- -------- -- - ----- --------- ------------ ------ -------- -------- -- - ----- -------- ------------ ----- -------- -------- -- -- --------------------- -------- -------- ----------- ------------- ---------- -------- --------- ---------- --
这里定义了 types
、scopes
、headerCorrespondence
和 noteKeywords
四个属性:
types
:定义了所有的 commit 类型,表示提交的目的;scopes
:定义了使用过程中需要的 scope;headerCorrespondence
:定义了 commit message 的顺序;noteKeywords
:定义了可能引入破坏性变更的关键字。
使用 conventional-changelog-config-spec
在 package.json
中的 script
中加入以下脚本:
{ "scripts": { "changelog": "conventional-changelog -i CHANGELOG.md -s -p angular", } }
-i CHANGELOG.md
:指定生成的 change log 的文件名;-s
:意思是把生成的 changelog 写入到 CHANGELOG.md 文件中;-p
:指定使用的 changelog 配置模板,这里使用了angular
模板。
执行:
npm run changelog
或者
yarn changelog
就可以生成一个符合约定式提交规范的 change log 了。
结语
通过使用 conventional-changelog-config-spec,可以很方便地遵循约定式提交规范,生成更加清晰、易于理解的 change log,不仅方便自己查看项目变化和更新,也有利于项目成员之间的沟通和协作。同时,这个 npm 包也可以很好地集成到项目中,并与 CI/CD 等开发流程一起使用。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedc3c9b5cbfe1ea0612159