只有源码有啥用,快来发布它 - Vue.js 3.x!

161 阅读2分钟

「我正在参与掘金会员专属活动-源码共读第一期,点击参与

版本号 : 3.x

本篇文章介绍的是Vue.js是如何发布的?

Vue.js 3.x的源码库转移位置了,现在在vue.js/core这个新地址。

源码下载

首先我们把源码下载下来,使用pnpm安装依赖。

git clone https://github.com/vuejs/core.git

源码的位置在core/scripts/release.js,接着我们使用vscode边调试,边解析代码。

在源码的第39行打上断点, 打开package.json。点击scripts属性上面的Debug,选择release。我们就可以开启Vue.js打包发布的调试了,接着代码就很顺利地运行到断点的位置了。

10-15行是获取命令行参数:

  • preId: 之前的版本号
  • isDryRun: 是否演习(如果演习,只是走个流程并不真正的打包)
  • skipTestsskipBuild: 跳过测试、跳过打包

入口在第39行的main函数

  1. 看看targetVersion是否存在,如果不存在则列出patch,minor,major进入选择。如果选择的是custom,则支持输入自定义版本。选择或输入完毕校验是不是有效的版本号。

image.png

  1. 接着就是询问是否发布该版本的包?
  2. Running tests...然后就是开始运行测试用例
  3. Updating cross dependencies...接着会更新每个package.json里对应的版本号
  4. Building all packages...更新完版本号,开始打包
  5. Generating changelog...生成更新日志
  6. Updating lockfile...更新pnpm-lock.yaml
  7. Committing changes...这一步开始提交git
  8. Publishing packages... 这里使用的是yarn publish发布
  9. 如果main运行有异常了,则更新package.json为当前版本。

结束语

这次使用了vscode来调试Node.js的代码,看变量的值很方便,一目了然。 如果想调试其他scripts里的选项,点击Debug选择对应的选项就行了。 注意不同的是,Vue.js 2.x的项目是一个package.json文件,现在是多个。