前言
前端领域的技术日新月异,一个好的项目需要良好的规范和文档,而 changelog 就是其中非常重要的一部分。@marionebl 出品的 npm 包 conventional-changelog-cli
可以根据规范自动生成 changelog,大大提高了文档生成的效率和准确度,本文就会详细介绍该包的使用以及如何配置规范。
什么是 changelog
Changelog 又称版本记录,是一种文档格式,可以记录一个软件或者项目的版本变更情况。通常包含以下信息:
- 版本号:可以是数字、字母或者其他自定义形式。
- 发布日期:记录该版本的发布日期。
- 变更内容:包含新增功能、修改、删除功能或者有关安全或者性能的调整等。
- 安装说明:详细说明该版本如何安装和部署。
什么是 conventional commit 规范
Conventional commit 规范是一种规范化的 commit message 内容格式。它有利于自动化生成 changelog、自动化版本发布、自动化语义化版本控制等。在 Conventional commit 规范中,每个 commit message 都由三部分组成:type、scope 和 subject。
其中,type 为 commit 的类型,常见的有以下七种:feat、fix、docs、style、refactor、test 和 chore。具体解释如下:
- feat:新功能
- fix:修复 bug
- docs:仅仅修改了文档,比如 README、CHANGELOG、CONTRIBUTE 等等
- style:修改了空格、格式、缺少分号等,适用于不影响代码功能的情况
- refactor:重构(即不是新增功能,也不是修改 bug 的代码变动)
- test:新增、修改测试用例
- chore:构建过程或者辅助工具的变动
scope 是可选项,用来说明该 commit 的影响范围。subject 是 commit 的简短描述。
比如:
------------- ------------------ - ------------ -------
如何使用 @marionebl/conventional-changelog-cli
安装
-- --- --- ----- --- ------- -- -------------------------- -- --- --- ----- --- ------- -- -------------------------- ----------
使用
-- ----- --------- ---------------------- -- ------- -- ------------ -- ------- --------- ---------------------- -- ------- -- ------------ --------------- -
参数说明:
-p
:指定使用的 commit 规范,angular 为一个非常流行的规范,你也可以使用其他规范。-i
:指定需要写入 changelog 的输出文件,在这里我们指定CHANGELOG.md
文件。--release-count
:指定需要生成 changelog 的版本数,这里我们指定为 0,表示生成最近的 changelog。
配置 conventional commit 规范
在使用 conventional-changelog-cli
进行 changelog 生成之前,需要先设置规范。
- 安装必要的依赖:
--- ------- ---------- ----- --- ------- ---------- --------------- -------------------------------
- 在
package.json
中添加以下配置:
-------- - -------- - ------------- ----------- -- ------------ - -- ------------- - ---------- ----------------------------------- -
这里,我们使用了 husky
将需要使用的 commitlint
钩子自动挂载,同时配置使用 @commitlint/config-conventional
规范。
安装 VSCode 插件及其依赖
继续编辑
.vscode/settings.json
添加以下代码
----------- ------------ -------------------------- ------------------------- -----
示例代码
-- -- --- ------- -- -------------------------- -- ----- --------- ---------------------- -- ------- -- ------------
结语
通过本文的介绍和示例代码,相信大家已经掌握了 @marionebl/conventional-changelog-cli
的使用方法和规范设置,更多详细用法请参照官方文档。规范的 commit message 对于团队协作和项目管理极为重要,希望本篇文章能够对大家有所帮助。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60066bca967216659e244623