作为前端工程师,我们经常需要协作开发项目,同时需要记录我们所做的工作。这就需要我们使用版本控制工具来管理我们的代码。而记录我们每次提交的变更,就需要使用到 Changelog。
Changelog 是一个记录项目版本变化的文件。每次更新版本时,我们需要记录新特性、bug 修复、文档更新等所有与之相关的变更。
Conventional Changelog 是一个开源的规范,它定义了一种标准的格式以及提交信息的分类方式,使得我们可以通过一定的规则得到一份清晰明了的 Change log。
而 Beemo 则是一个基于 Conventional Changelog 的自动化工具。它可以帮助我们自动生成 Change log,同时还可以搭配 CI/CD 工具集成到我们的开发流程中。
安装
我们可以通过 NPM 来安装 Beemo:
$ npm install -g beemo
配置
在初始化项目之后,我们可以使用 beemo init 命令来创建一个 Beemo 配置文件:
$ beemo init
执行该命令后,我们会看到一个名为 beemo.config.js 的文件被创建,里面包含了 Beemo 的基本配置,例如使用的 CommitLint 规则、Export 的文件名等,默认的 diffUrl 也可以自己设置(默认为 Github 地址)。
我们也可以通过自定义配置来满足我们项目的需求。以下是一个示例配置:
-- -------------------- ---- ------- -------------- - - ------- - -------- ---------------- ---------------------- ----- ----------------------------- -- -------- - - ----- ------------------------------------ ------- ---------- ------------- - ------ -------- -------- --------- ------ ----- -------- --------- ------ ----------- -------- --------- ------ ------- -------- --------- ------ ------- -------- --------- -- -- - ----- -------------------------------------------- ------- ----------- ----------- - ------------ ----------- --------- -- -- -- -
在这个配置中,我们使用了 @semantic-release 这个插件,并设置了对 Angular 规范的支持,采用的 Release Notes 生成方式是 Markdown,同时对提交信息按照 Subject 和 Scope 进行排序。
使用
在配置完成之后,我们可以通过以下命令来生成 Change log:
$ beemo changelog
Beemo 会根据配置文件和已有的 Commit 记录自动帮我们生成 Change log,其中包含了每个版本的特性、缺陷和改进等内容。
结论
总体而言,Beemo 作为一个基于 Conventional Changelog 的自动化工具,可以帮助我们轻松地生成 Change log,将其嵌入到我们的项目中,以便我们更好地管理版本变化和协作开发。在多人协作,需求变化频繁的开发中,它能够为我们提供有力的支持。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedad38b5cbfe1ea0610c0b