主题
理解 Volta
Volta 的工作是管理您的 JavaScript 命令行工具,例如 node
、npm
、yarn
或作为 JavaScript 包一部分提供的可执行文件。
类似于包管理器,Volta 会根据您当前的目录跟踪您正在处理的项目(如果有)。您的 Volta 工具链中的工具会自动检测您何时处于使用特定版本工具的项目中,并负责为您路由到正确版本的工具。
管理您的工具链
您可以使用两个命令来控制 Volta 工具链管理的工具:volta install
和 volta uninstall
。
安装 Node 引擎
要在您的工具链中安装工具,您需要设置该工具的_默认版本_。Volta 将始终使用此默认值,除非您在已配置 Volta 使用不同版本的项目目录中工作。当您选择默认版本时,Volta 还会将该版本下载到本地缓存。
例如,您可以选择一个精确版本的 node
作为您的默认版本:
sh
volta install [email protected]
您不需要指定精确的版本,在这种情况下,Volta 将选择一个合适的版本来匹配您的请求:
sh
volta install node@18
您还可以指定 latest
—甚至完全不指定版本,Volta 将选择最新的 LTS 版本:
sh
volta install node
一旦您运行了这些命令之一,Volta 在您的 PATH
环境(或 Windows 中的 Path
)中提供的 node
可执行文件将默认自动运行您选择的 Node 版本。
同样,您可以分别使用 volta install npm
和 volta install yarn
来选择 npm 和 Yarn 包管理器的版本。这些工具将使用您选择的默认 Node 版本运行。
安装包二进制文件
使用 Volta,通过包管理器全局安装命令行工具也会将其添加到您的工具链中。例如,vuepress
包包含同名的可执行文件:
sh
yarn global add vuepress
当您在工具链中安装包时,Volta 会获取您当前的默认 Node 版本并将该工具_固定_到该引擎(有关更多信息,请参阅包二进制文件)。除非您更新工具,否则 Volta 不会更改工具的固定引擎。这样,您可以确信您安装的工具不会在您不知情的情况下发生变化。
管理您的项目
Volta 允许团队或协作者社区标准化他们用于项目的开发工具。
固定 Node 引擎
volta pin
命令允许您为项目选择 Node 引擎和包管理器版本:
sh
volta pin [email protected]
volta pin [email protected]
Volta 将此存储在您的 package.json
中,因此您可以将工具的选择提交到版本控制:
javascript
"volta": {
"node": "18.16.0",
"yarn": "1.22.19"
}
这样,每个使用 Volta 处理项目的人都会自动获得您选择的相同版本。
sh
node --version # 18.16.0
yarn --version # 1.22.19
使用项目工具
node
和包管理器可执行文件并不是您工具链中唯一智能的工具:您工具链中的包二进制文件也知道您的当前目录,并尊重您所在项目的配置。
例如,安装 TypeScript 包会将编译器可执行文件—tsc
—添加到您的工具链:
sh
npm install --global typescript
根据您所在的项目,此可执行文件将切换到项目选择的 TypeScript 版本:
sh
cd /path/to/project-using-typescript-5.0.4
tsc --version # 5.0.4
cd /path/to/project-using-typescript-4.9.5
tsc --version # 4.9.5
安全与便利
Volta 旨在为您提供安全与便利的平衡。通过固定工具版本并自动路由到正确的版本,Volta 确保您的开发环境始终与您的项目兼容,同时提供了简单、无缝的用户体验。