npm 包 conventional-changelog-config-spec 使用教程

阅读时长 5 分钟读完

conventional-changelog-config-spec 是一款 npm 包,用于帮助前端开发者生成符合约定式提交规范(Conventional Commits)的 change log,方便开发者了解项目版本更新的详细内容以及变化。

约定式提交规范(Conventional Commits)

约定式提交规范是一种结构化的提交信息的方法,旨在解决协作式开发中提交信息的表达不一致、难以理解等问题。该规范的格式为:

其中,type 代表提交的类型,比如 feat (新功能)、fix (修复问题)、docs (文档修改)、style (代码样式修改)等;description 表示本次提交的简短描述,要求使用英文动词开头;作用域、正文和脚注等可选项根据实际需求添加。

例如:

可以看出,这样的提交信息非常清晰、易于理解。

安装和配置 conventional-changelog-config-spec

安装

在项目中使用 npm 或 yarn 安装:

或者

配置

在项目根目录新建 .conventional-changelog 文件夹,并在其中创建 config.js 文件,配置需要的信息,例如:

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

这里定义了 typesscopesheaderCorrespondencenoteKeywords 四个属性:

  • types:定义了所有的 commit 类型,表示提交的目的;
  • scopes:定义了使用过程中需要的 scope;
  • headerCorrespondence:定义了 commit message 的顺序;
  • noteKeywords:定义了可能引入破坏性变更的关键字。

使用 conventional-changelog-config-spec

package.json 中的 script 中加入以下脚本:

  • -i CHANGELOG.md:指定生成的 change log 的文件名;
  • -s:意思是把生成的 changelog 写入到 CHANGELOG.md 文件中;
  • -p:指定使用的 changelog 配置模板,这里使用了 angular 模板。

执行:

或者

就可以生成一个符合约定式提交规范的 change log 了。

结语

通过使用 conventional-changelog-config-spec,可以很方便地遵循约定式提交规范,生成更加清晰、易于理解的 change log,不仅方便自己查看项目变化和更新,也有利于项目成员之间的沟通和协作。同时,这个 npm 包也可以很好地集成到项目中,并与 CI/CD 等开发流程一起使用。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedc3c9b5cbfe1ea0612159

纠错
反馈