随着项目规模的扩大,软件发布版本管理变得越来越重要。其中,CHANGELOG
是记录软件版本的常用方式之一。然而,手动维护 CHANGELOG
是一项繁琐的任务,特别是在团队协作开发中。为此,出现了许多工具来自动生成 CHANGELOG
,@invisible/changelog-update
就是其中之一。
本文介绍如何使用 npm 包 @invisible/changelog-update 来自动生成 CHANGELOG
,以及相关的实用技巧和注意事项。
安装
首先,我们需要在本地安装 @invisible/changelog-update
:
npm install @invisible/changelog-update --save-dev
使用
配置
在使用 @invisible/changelog-update
之前,我们需要添加一些配置,告诉它从哪个目录读取 CHANGELOG
、如何更新 CHANGELOG
和如何验证 CHANGELOG
。示例配置如下:
// .changelogrc.js module.exports = { filePath: "./CHANGELOG.md", updateType: "append", version: "v0.0.1", validatePattern: /^v[0-9]+\.[0-9]+\.[0-9]+$/ }
filePath
: 指定CHANGELOG
文件的路径,如果文件不存在,@invisible/changelog-update
会自动创建该文件updateType
: 指定更新方式,append
表示在末尾追加新的版本记录,prepend
表示在开头添加新的版本记录version
: 指定新的版本号validatePattern
: 指定CHANGELOG
版本号的验证规则
执行
配置好后,我们可以通过 npm script 或命令行来执行 @invisible/changelog-update
。示例命令如下:
changelog-update
这将会自动根据配置文件更新 CHANGELOG
文件,添加新的版本记录。
自定义提交信息
默认情况下,@invisible/changelog-update
会使用 git log --pretty=%s
命令获取提交信息作为版本更新的描述,每行作为列表项。
如果你希望自定义提交信息的格式,可以修改 commitTemplate
选项,示例配置如下:
// .changelogrc.js module.exports = { // ... commitTemplate: '{{verb}} {{version}}\n{{#if note}} {{note}}{{/if}}', }
上述配置将提交信息格式化为以下形式:
Version v1.0.0 New Feature: ... Bugfix: ...
其中,{{verb}}
将根据更新类型自动设置为 Released
或 Updated
,{{version}}
将根据配置文件中的版本号自动填写,{{note}}
可以手动添加版本更新的详细说明。
总结
通过 @invisible/changelog-update
,我们可以方便地自动生成 CHANGELOG
,减少手动操作的繁琐。除了本文中介绍的基本用法和配置外,还有许多高级功能和选项可供选择,你可以查阅官方文档以了解更多信息。
在团队协作开发中,每次版本发布都需要更新 CHANGELOG
,这样可以帮助开发者更好地了解软件的更新和变化,帮助用户更好地了解软件的功能和改进。因此,学习和掌握 @invisible/changelog-update
的用法是一项非常有意义的技能。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5ef801d6403f2923b035b94f