什么是 Lerna Semantic Utilities?
Lerna Semantic Utilities
是一个 npm
包,主要解决在多个 npm package
的情况下管理 semantic
版本号的问题。它可以帮助你自动化地维护版本号,标记版本号、生成 CHANGELOG
等操作,大大提高了代码开发和发布的效率。
安装 Lerna Semantic Utilities
通过 npm
可以很方便地安装 Lerna Semantic Utilities
:
npm i -g @jmaxwell/lerna-semantic-utils
如何使用 Lerna Semantic Utilities?
初始化
首先需要将代码库初始化,使用如下命令:
semantic init
执行这个命令会创建一个 .semrelrc
文件,用于配置版本号计算规则、CHANGELOG
格式、git 提交规范等信息。分别对应 semver
、markdown
和 commitzen
这三个 npm
包的配置,根据自己的需求进行修改即可。
版本发布
在所有代码都已经 commit
到 git
仓库之后,可以使用以下命令自动发布版本:
semantic release
其中会执行以下操作:
- 对
git
仓库进行pull
,确保最新代码已经拉取 - 判断新版本号是否为
prerelease
- 根据新版本号生成
tag
并进行git tag
- 根据
CHANGELOG
模板生成CHANGELOG
- 升级相应
package.json
的版本号并进行git commit
- 生成
git release
上述所有操作均是自动化的,执行完命令之后,会在 git
仓库中生成一条新的 release
。
tag 版本回退
当你遇到发布错误,需要回退之前的版本时,可以使用以下命令:
semantic tag remove x.x.x
其中 x.x.x
代表需要移除的版本号。
版本号手动修改
使用以下命令可以手动修改所有 package.json
中的版本号:
semantic set-version x.x.x
其中 x.x.x
代表需要手动设置的版本号。
自定义配置
.semrelrc
中已经设置的默认规则,如果我们需要自定义,可以通过以下方式:
- 在根目录下新建
semrelrc.json
文件,用于自定义配置规则 - 执行如下命令:
semantic --config custom-config.json
以上两种方式都可以实现自定义规则的需求。
示例代码
-- -------------------- ---- ------- -- ------ -------- ------- -- ---- -------- --- ------ ----- -- ------- -------- ----------- ----- -- ------- -------- -------- ------------------
总结
本文介绍了 Lerna Semantic Utilities
的使用方法,通过使用它,我们可以很方便地管理多个 npm package
的 semantic
版本号。对于有 npm package
开发需求的前端开发者来说,使用 Lerna Semantic Utilities
可以提高代码开发和发布的效率,值得一试。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005600d81e8991b448dde0c