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