- Published on
全面掌握Volta: 跨平台Node版本管理终极指南
- Authors
- Name
- Liant
Node版本管理器Volta使用指南
1、应用场景
随着业务堆叠,公司维护和开发的项目越来越来多,无论是个人开发还是运维部署,每个项目框架不同、插件不同、相同插件依赖的版本不同,都会导致对node版本的不同要求。
这个时候就需要在个人开发电脑、运维服务器上安装node版本管理工具。目前常用的是windows的nvm,linux的n。但是或多或少存在一些问题:
- 个人开发及运维使用的工具不同,指令操作不同;
- nvm存在安装node丢失npm的缺陷,需要自己去下载npm包,使用起来也不方便;
- nvm和n本质上只能控制电脑或服务器整个环境的node版本,无法实现,不同项目(文件夹)之间的node版本隔离;
而volta已经解决了上面的三个问题。
2、volta优势
- 适用于任何操作系统
- 支持node/npm/yarn的版本管理
- 隔离项目之间的node版本
- 安装快速
3、安装和环境变量配置演示
官网首页:https://volta.sh/
windows:https://www.jianshu.com/p/c6f17d67c6b1
Linux:https://docs.volta.sh/guide/getting-started (官方)
4、常用指令和应用场景演示
Volta install
Volta install node/yarn@xx.xx.xx
全局安装某个版本的node、yarn并将全局默认版本切换至该版本Volta install node@12
Volta install node@12.16
Volta install node@12.16.1
重要更新:最近install node时会网络下载失败( https://nodejs.org 需要科学上网) 解决方案为手动去node中文镜像站下载对应版本的zip文件放到volta的版本库中。 然后再执行
Volta install node@xx.xx.xx
,初始化npm即可。操作步骤见下:方法一:
- 使用淘宝镜像链接下载对应版本zip包(替换16.19.1至任意存在的版本号即可 ):https://registry.npmmirror.com/-/binary/node/v16.19.1/node-v16.19.1-win-x64.zip
- 在我的电脑->属性->高级系统设置->环境变量->用户的path配置找到你的volta版本库路径
- 将下载zip文件剪切至目录下的D:\volta\tools\inventory\node 文件夹内(不要解压)。
- 打开cmd操作终端,执行一下volta install node@xx.xx.xx,安装完成。
方法二:
- 在D:\volta下创建hooks.json文件。
- 写入以下内容:
{ "node": { "latest": { "prefix": "https://registry.npmmirror.com/" }, "distro": { "template": "https://registry.npmmirror.com/-/binary/node/v{{version}}/node-v{{version}}-{{os}}-{{arch}}.zip" } } }
- 写入以下内容:
- 之后即可按常规指令操作下载node,飞快哦~~~
- Ps: 此方法未在除windows系统以外的系统测试过,慎用。
- Volta uninstall 卸载,但是我没成功,是找的文件夹删除的方式卸载了某个版本。
- Volta pin
- 依赖于package.json文件,必须在有该文件的目录下执行。
Volta pin node@12
Volta pin node@12.16
Volta pin node@12.16.1
- 运行后会修改package.json的相关配置内容
"volta": { "node": "12.16.1", "yarn": "1.22.19" }
- Volta pin
Volta list <all>
查看当前环境已安装和默认的配置
5、不是必须统一使用
即使是不使用volta做自己的node版本管理器,也不和其他协作者有所冲突。可以根据使用习惯,自行切换本地node版本。
同一个项目在新增、升级插件时,应当考虑整体的node
版本依赖。
同一项目应该在package.json下增加版本配置(即使自己不使用volta,也可以告诉协作者注意环境版本依赖)。
开发者应该自觉遵行项目配置的版本要求。不得私自加入不能向下兼容的插件。