img

比 nvm 更好用的 node 版本管理工具

2023-12-25 0条评论 455次阅读 JavaScript


什么是 Volta


wordmark.jpg

Volta 是一种管理 JavaScript 命令行工具的便捷方式。

volta 的特点:

  • 速度

  • 无缝,每个项目的版本切换

  • 跨平台支持,包括 Windows 和所有 Unix shell

  • 支持多个包管理器

  • 稳定的工具安装-无需每次升级都重新安装!

  • 可扩展性挂钩用于特定于站点的定制

为什么选择 Volta?


使用 Volta,您可以一次选择 Node 引擎,然后不再担心它。您可以在项目之间切换,而不必手动切换 nodejs 版本。你可以在工具链中安装 npm 二进制包,而不必定期重新安装它们,或者弄清楚它们停止工作的原因。

二、正文


快速设置和切换 Node 版本

获取并使用特定版本的 Node:

volta install node@14

注意到该工具的响应速度有多快。开发时间是宝贵的 JavaScript 开发人员应该拥有时髦的工具。
为合作者提供可复制的环境
Volta 允许你用一个命令为一个项目选择节点引擎和包管理器:

volta pin node@12

Volta 将 Node 引擎的准确版本保存在 package.json,这样你就可以把你的选择提交给 git。从那时起,每次在项目目录中运行 Node 时,Volta 都会自动切换到您选择的同一版本 的 Node。类似的。所有的合作者都可以通过在他们的开发机器上安装 Volta 来做同样的事情。

Install and forget

Volta 还允许您将最喜欢的二进制包作为命令行工具安装,而不必担心它们会干扰您的开发项目。更好的是,这些工具在安装时被固定到特定的 Node 引擎上,除非您显式地告诉它们,否则它们不会更改。这意味着一旦一个工具工作了,它就会继续工作。

npm install -g surgesurge -h

安装 Volta

链接地址:https://volta.sh/

在安装 Volta 前, 如果有使用其它的 nodejs 管理工具/nodejs,可以提前卸载(非必须)。

# install Volta
curl https://get.volta.sh | bash

# install Node
volta install node

# start using Node
node

使用 Volta

Volta 的工作是管理 JavaScript 命令行工具,如 node、npm、yarn 或作为 JavaScript 包的一部分发布的可执行文件。
与包管理器类似,Volta 会根据当前目录跟踪您正在处理的项目(如果有的话)。Volta 工具链中的工具会自动检测您所处的项目是否使用特定版本的工具,并为您路由到正确的工具版本。

管理工具链

可以使用两个命令控制由 Volta 工具链管理的工具: Volta install 和 Volta uninstall。

安装 node 引擎

要将工具安装到工具链中,需要设置该工具的默认版本。Volta 将始终使用这个默认值,除非您在一个已配置 Volta 使用不同版本的项目目录中工作。当您选择默认版本时,Volta 也会将该版本下载到本地缓存中。
例如,您可以选择 node 的确切版本作为默认版本:

volta install node@14.15.5

不需要指定一个精确的版本,在这种情况下,Volta 会选择一个合适的版本来匹配你的请求:

volta install node@14

也可以指定最新版本,或者甚至完全不选择版本,Volta 将选择最新的 LTS 版本:

volta install node

管理我们的项目

Volta 允许团队或协作者社区标准化他们在项目中使用的开发工具。
固定 Node 引擎
volta pin 命令允许您为项目选择 Node 引擎和包管理器版本:

volta pin node@12.20
volta pin yarn@1.19

Volta 会把这个放在你的 package.json,这样你就可以把你选择的工具提交到版本控制:

"volta": {  
   "node": "12.20.2",  
   "yarn": "1.19.2"
}

这样,每个使用 Volta 在项目上工作的人都会自动获得您选择的相同版本。

node --version # 12.20.2
yarn --version # 1.19.2

相关命令

volta fetch 将工具缓存到本地机器以供离线使用
volta install 设置工具的默认版本
volta uninstall 从工具链中卸载工具
volta pin 固定项目的运行时或包管理器
volta list 显示当前工具链
volta completions 命令补全
volta which 查看 volta 安装的工具的目录
volta setup 为当前用户/shell 启用 volta
volta run 运行带有自定义Node、npm、pnpm和/或Yarn版本的命令
volta help 输出帮助信息

如果你在工作中遇到有多个项目使用不同版本的 nodejs,就来试试Volta吧!

参考:https://mp.weixin.qq.com/s/UbNm6hRrfhB8UvCyrp1QFA

💬 COMMENT


🦄 支持markdown语法

👋友