likes
comments
collection
share

快来试试Volta【 一站式的JavaScript管理工具】

作者站长头像
站长
· 阅读数 11

前言

最近在做新的项目和维护老的项目,他们用的node版本不一样,切换项目要用nvm或者n来切换node版本,切换版本后有时还需要重新安装依赖,麻烦的很。看到可以用Volta,可以根据项目来指定使用不同的node,或者npm, yarn等。遗憾的是目前还不支持pnpm, 但我看目前已有PR, 等待Merge,不久应该就会支持。

Volta 介绍

Volta一站式的JavaScript管理工具

⚡ 快

快速安装和运行任何 JS 工具!Volta 是用 Rust 构建的,并作为一个静态二进制文件发布。

⚡ 可靠

确保项目中的每个人都拥有相同的工具,而不会干扰他们的工作流程。

⚡ 通用

无论是包管理器、Node 运行时还是操作系统,您只需要一个命令:volta install.

安装

Unix 安装

在包括 macOS 在内的大多数 Unix 系统上,您可以使用单个命令安装 Volta:

curl https://get.volta.sh | bash

我这里是Mac电脑,安装后已自动添加环境变量,可以直接使用volta

快来试试Volta【 一站式的JavaScript管理工具】

对于没有自动添加到环境变量的同学,可以自己添加到环境变量

.zshrc查看shell配置文件如带有cat命令的文件等,如果写入如下路径,就OK了。 ~/.zshrc

export VOLTA_HOME="$HOME/.volta"
export PATH="$VOLTA_HOME/bin:$PATH"

重启动终端一次volta,检查是否可以使用该命令。

Windows 安装

对于 Windows,下载并运行 Windows 安装程序并按照说明进行操作。

Volta 的功能取决于创建符号链接,因此您必须:

  • 启用开发者模式(推荐)
  • 以提升的权限运行 Volta(不推荐)

关于 Volta

安装node引擎

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

例如:选择一个确定的node版本作为默认版本

volta install node@14.15.5

如果不需要精确版本,这种情况下,Volta会选择一个合适的版本来作为默认版本

volta install node@14

您还可以指定latest或者不加版本号,Volta 将选择最新的 LTS 版本

volta install node

运行这些命令之一后,nodeVolta 在您的PATH环境(或PathWindows)中提供的可执行文件将默认自动运行您选择的 Node.js 版本。

volta install npm同样,您可以分别使用和选择 npm 和 Yarn 包管理器的版本volta install yarn。这些工具将使用您选择的默认节点版本运行。

遗憾的是目前还不支持pnpm, 但我看目前已有PR, 等待Merge,不久应该就会支持。

在项目中使用Volta

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进行项目操作的时候会自动获取统一的版本。

Volta 命令

这是命令volta行二进制文件的命令参考,其语法如下:

The JavaScript Launcher ⚡

    To install a tool in your toolchain, use `volta install`.
    To pin your project's runtime or package manager, use `volta pin`.

USAGE:
    volta [FLAGS] [SUBCOMMAND]

FLAGS:
        --verbose    
            Enables verbose diagnostics

        --quiet      
            Prevents unnecessary output

    -v, --version    
            Prints the current version of Volta

    -h, --help       
            Prints help information


SUBCOMMANDS:
    fetch          Fetches a tool to the local machine
    install        Installs a tool in your toolchain
    uninstall      Uninstalls a tool from your toolchain
    pin            Pins your project's runtime or package manager
    list           Displays the current toolchain
    completions    Generates Volta completions
    which          Locates the actual binary that will be called by Volta
    setup          Enables Volta for the current user / shell
    help           Prints this message or the help of the given subcommand(s)
  • volta fetch 该命令将允许您将工具提取到本地缓存中,而无需将其设置为默认值或使其可用,以供将来离线使用。
  • volta install 该命令设置工具的默认版本。
  • volta uninstall 该命令允许您删除任何已安装的全局包volta install
  • volta pin 该命令将更新项目package.json文件以使用选定版本的工具
  • volta list 该命令您检查已安装的 Node 运行时、包管理器和带有二进制文件的包。
  • volta which 该命令定位将打开实际的二进制文件。
  • volta setup 该命令可以修改当前用户的环境变量

结束语

如果你在工作中遇到有多个项目使用不同版本的node,或者包管理工具,来试试Volta吧。真的很方便而且高效。

如果你觉得该文章不错,不妨

1、点赞,让更多的人也能看到这篇内容

2、关注我,让我们成为长期关系

3、关注公众号「前端有话说」,里面已有多篇原创文章,和开发工具,欢迎各位的关注,第一时间阅读我的文章