standard-version版本自动化工具
standard-version 安装与使用
上一篇我们已经介绍了如何进行 commit-msg
的规范提交与校验
那我们 git 提交之后怎么进行版本的控制与自动生成 changelog
呢?那就需要使用到standard-version
介绍
standard-version 是一款遵循语义化版本(semver)和 commit message 标准规范的版本自动化工具,它还可以使生成 changelog 自动化。并且将我们符合 Conventional Commits 规范的提交信息格式化。
作用
自动升级版本
自动打 tag
自动生成 changelog
安装
::: tip 使用前提 在使用 standard-version 之前,需要遵循 Conventional Commit Specifications 来进行标准化的 commit message 编写。这是因为 standard-version 是基于 commit 类型来更新版本号的(feature 会更新 minor, bug fix 会更新 patch, BREAKING CHANGES 会更新 major)。commitizen 可以帮助我们提交符合 Conventional Commit Specifications 的 commit message。 :::
上一篇:commitLint 与 commit-msg 操作
安装
配置脚本
在package.json
文件中添加脚本
::: tip 高版本可以使用npm set-script
进行设置 :::
配置
安装好相应依赖与指令需要进行配置
增加 .versionrc
文件来格式化 log ,使我们的 changelog
根据 Conventional Commits 规范更加语义化。
使用
当一切都配置好,使用 commitlint 进行代码提交之后
将代码合并到发版分支 可执行npm run release
按默认规则升级版本号
这个时候就会自动更改pacakge.json
中的version
npm
的版本号格式:major.minor.patch
自动更新的版本号会按照默认规则升级patch
手动设置版本更新
直接升级
major
直接升级
minor
直接升级
patch
强制打一个静态版本号
发布第一个版本
示例
git 提交记录