Vuex 4源码学习笔记 - 做好changelog更新日志很重要(十)

366 阅读2分钟

这是我参与11月更文挑战的第27天,活动详情查看:2021最后一次更文挑战

在上一篇笔记中:Vuex是如何发布的(九)

我们看到了Vuex是通过npm run release命令来运行release.js这个发布脚本来进行发布,在其中有一个步骤是通过yarn changelog命令来生成CHANGELOG.md文件,也就是每个版本都有哪些东西进行了变更。

那么它是怎么做到的呢?

老规矩,还是从package.json看起,我们可以找到一个changelog的命令

"scripts": {
  //...
  "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
  //...
}

他是通过conventional-changelog-cli这个npm包来实现的自动生成CHANGELOG.md

它的使用也特别的简单:

$ npm install -g conventional-changelog-cli
$ cd my-project
$ conventional-changelog -p angular -i CHANGELOG.md -s

它的原理就是通过我们Git提交的信息,来去生成CHANGELOG.md

一般我们在项目中使用它的流程为:

  1. 开发功能,写代码
  2. 使用Git Commit来提交代码
  3. 执行测试代码,确保测试通过
  4. 升级package.json中的版本号
  5. 运行conventional-changelog来生成CHANGELOG.md文件
  6. 使用Git Commit来提交package.jsonCHANGELOG.md 文件
  7. 打上Git Tag
  8. Git Push

那为什么一定要要生成CHANGELOG呢?

在我们所有使用的开源软件中或者商业软件中,都会看到什么时候发布了什么版本更新了什么内容,那这个东西就是CHANGELOG,也叫做更新日志,所以一般我们会将更新日志作为发布周期的一部分进行自动化。

比如说:

Node.js现在最新版本是17

image-20211128204817853

那我们就可以通过它的Changelog来查看Node.js的17版本有哪些功能:

image-20211128210046884

我们可以点击它的每个功能的Commit来查看此次功能都有哪些代码的变更和功能说明

功能详细说明:

image-20211128210111795

部分代码变更:

image-20211128210149672

那么通过conventional-changelog可以让我们通过Git信息来自动生成更加易于理解的更新日志。

image-20211128210426578

感谢大家的阅读

一起学习更多前端知识,微信搜索【小帅的编程笔记】,每天更新