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

各开发语言版本管理工具 开发中不同的项目可能会用到不同的语言,例如有用JavaScript、golang、java、python等,在项目演进中可能需要更新各语言环境的版本,以下针对不同语言汇总了版本管理工具,即可以通过以下工具随时在本机上安装不同版本的环境以及随时切换。 JavaScript 对于js的翻译,一般都会选择node,node版本管理工具比较好用的就是nvm了,可以通过npm安装 安装 npm install nvm -g //需要全局安装 查看已经安装的node版本 nvm ls 安装node版本 nvm i 阅读详情

你好,我是坚持分享干货的 EarlGrey,翻译出版过《Python编程无师自通》、《Python并行计算手册》等技术书籍。

如果我的分享对你有帮助,请关注我,一起向上进击。

创作不易,希望大家给一点鼓励,把公众号设置为“星标”,给文章点个“赞”和“在看”,谢谢大家啦~

什么是 Volta?

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 surge
surge -h

安装 Volta

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

Unix 安装

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

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

对于 bash, zsh 和 fish,这个安装程序将自动更新控制台启动脚本。如果您希望防止修改控制台启动脚本,请参阅跳过 Volta 设置。要手动配置你的 shell 使用 Volta,编辑你的控制台启动脚本如下:

  • 将 VOLTA_HOME 变量设置为 $HOME/.volta

  • 将 $VOLTA_HOME/bin 添加到 PATH 变量的开头

Windows 安装

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

Volta 的功能依赖于创建符号链接,所以你必须:

  • 启用开发者模式[5](推荐)

  • 以提升的权限运行 Volta(不推荐)

Windows 下的 linux 子系统

如果您在 Linux 的 Windows 子系统中使用 Volta,请遵循上面的 Unix 安装指南。

使用 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

一旦您运行了这些命令中的一个,在您的 PATH 环境(或 Windows 中的 PATH)中由 Volta 提供的节点可执行文件将在默认情况下自动运行您选择的 node 版本。

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

安装二进制包

使用 Volta,使用包管理器全局安装命令行工具也会将其添加到工具链中。例如,`vuepress`[6] 包包含一个同名的可执行文件:

yarn global add vuepress

当您将一个包安装到工具链上时,Volta 会获取当前的默认 Node 版本,并将该工具固定到该引擎上(有关更多信息,请参阅包二进制文件[7])。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 在项目上工作的人都会自动获得您选择的相同版本。

node --version # 12.20.2
yarn --version # 1.19.2
使用项目工具

node 和包管理器可执行文件并不是工具链中唯一的智能工具:工具链中的包二进制文件也知道您的当前目录,并尊重您所在项目的配置。

例如,安装 Typescript 包会将编译器 tsc 添加到你的工具链中:

npm install --global typescript

根据你所在的项目,这个可执行文件会切换到项目选择的 TypeScript 版本:

cd /path/to/project-using-typescript-3.9.4
tsc --version # 3.9.4

cd /path/to/project-using-typescript-4.1.5
tsc --version # 4.1.5
安全方便

因为 Volta 的工具链总是跟踪你在哪里,它确保你使用的工具总是尊重你正在做的项目的设置。这意味着您不必担心在项目之间切换时更改已安装软件的状态。

更重要的是,当 Volta 运行一个工具时,它会覆盖它的轨迹,确保你的 npm 或 Yarn 脚本永远不会看到你的工具链中有什么。

这两个特性的结合意味着 Volta 解决了全局包的问题。换句话说,Volta 为您提供了全局包安装的便利,但没有危险。

例如,你可以使用 npm i -g typescript 安全地安装 TypeScript,并享受直接调用 tsc 的便利无需担心项目的包脚本可能意外地依赖于您的机器的全局状态。

Pnpm 支持

对 pnpm 的支持目前是实验性的。

要启用该功能,请确保环境变量 VoLTA_FEATURE_PNPM 设置为 1。在 Windows 上可以添加到环境变量中。

在 Linux/Mac 上,您可以在配置文件脚本中设置该值(例如 .bash_profile、.zshrc 或类似的脚本)。

结束语

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

作者:JiKun

原文:https://juejin.cn/post/7275608678828916755

- EOF -

文章已经看到这了,别忘了在右下角点个“赞”和“在看”鼓励哦~

推荐阅读  点击标题可跳转

1、VS Code 变身小霸王游戏机!

2、认知升级:模型与范式转换

3、超赞的 Python 编译器,单核提速100倍

4、高效的终极秘诀

5、Python 3.12 版本有什么变化?

回复下方「关键词」,获取优质资源

回复关键词「 pybook03」,领取进击的Grey与小伙伴一起翻译的《Think Python 2e》电子版

回复关键词「书单02」,领取进击的Grey整理的 10 本 Python 入门书的电子版

👇关注我的公众号👇

告诉你更多细节干货

21eb29dc475507ae512e1a264477f7fd.jpeg

欢迎围观我的朋友圈

👆每天更新所想所悟

volta-1.1.1-windows-x86-64.msi volta-1.1.1-windows-x86_64.msi 立即下载

相关推荐

volta下载文件,使用于切换node版本

遇到不同的项目需要不同node,而开发时间交叉

volta下载以及使用

volta下载以及使用

weixin_57663472的博客 3404

LTspice基础教程-024.参数扫描;step指令用法

step指令用于参数扫描,扫描步骤可以是线性的,对数的或列表。 下面介绍几种常用用法: 绘制一简单电阻分压电路,如下: 线性扫描 语法:.step param <Name> <Start Value> <Stop Value> <Increment> 例:.step param Res 20 100 20 意思是R2的阻值从20变化到100,...

gaoyong_wang的博客 3万+

Node版本工具——volta

一个非常好用的node版本管理工具

admin_jo的博客 1288

VI恒流源原理详细分析(0~10V转0/4~20mA)

但是此电阻也不能无限增加,首先我们所列方程均是基于运放虚短虚断的假设,此假设又是基于运放输入阻抗无穷大,输出阻抗无穷小的前提条件,然而实际的运放并非理想运放,对于TL082IDR这款运放,其Rid(Common-mode input resistance)典型值为1TΩ,以此来看感觉1MΩ确实还不是很大,但是还有另一个影响因素需要考虑,那就是电路的抗干扰能力,原则上,电阻越大受到外部干扰的可能性越大。也就是实现Uin 0~10V变化时对应Iout 0~20mA的一个线性对应关系。

IOTBOT的博客 2902

手把手教你用MOS管设计双电源自动切换电路(附零压降方案)

本文详细介绍了使用MOS管设计双电源自动切换电路的完整方案,包括基础电路拓扑、零压降优化设计及实战调试技巧。针对外接电源与电池供电的无缝切换需求,提供低损耗MOS管选型建议和性能实测数据,帮助工程师解决传统二极管方案的压降与漏电问题。

h0i1j2k3l的博客 1451

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

FNM 是一个轻量级的 Node.js 版本管理工具,支持快速安装和切换 Node.js 版本,具有跨平台的优势,适用于 Windows、macOS 和 Linux 系统。安装 Node.js 版本切换 Node.js 版本查看已安装版本fnm list设置默认版本。

weixin_42572039的博客 2706

如何理解反步法设计控制器?

假设以二阶系统为例,被控对象的系统状态方程为: 基于反步控制的具体方法如下: 1.1步骤一 定义期望状态为xd,状态误差e1,为: e1=x1-xd; 则e1的导数为: 1.2步骤二 定义虚拟控制量为: e2定义为: 1.3步骤三 定义Lyapunov能量函数为: 1.4步骤四 定义总Lyapunov能量函数为: 因此设计的控制律为: 设计c>0,则: 满足Lyapunov的稳定性判定条件...

weixin_42736130的博客 2万+

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

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

New个对象喝咖啡 4969

通达信股本变迁文件(gbbq)解密方法

近年来A股市场跌宕起伏真特么精彩,本人愚钝,被整爆仓,损失惨重 痛定思痛,认为交易这种对纪律要求极高,且必须完全排除情绪影响的勾当,还是应该交给程序来干 数据哪里来呢?当然是拿来主义。。。问券商的交易软件要呗 到处查资料,得知通达信的权息文件数据齐全,不仅含有除权除息数据,还含有限售解禁、增发、可转债上市等股本变化数据 ——这对于某些对成交量变化敏感的交易模型是非常重要的

不甘碌碌老,结庐铸宝刀 2万+

YOLOv8训练流程-原理解析[目标检测理论篇]

本篇文章主要介绍了YOLOv8训练的流程,主要介绍了Task Aligned Assigner正负样本匹配策略以及YOLOv8的损失计算。

ice 4517

更好用的 node 版本管理工具

Volta是一种管理 JavaScript 命令行工具的便捷方式。volta的特点:速度无缝,每个项目的版本切换跨平台支持,包括 Windows 和所有 Unix shell支持多个包管理器稳定的工具安装-无需每次升级都重新安装!可扩展性挂钩用于特定于站点的定制。

热爱可抵岁月漫长 1228

YOLOv11的多任务学习:检测+分割+姿态估计-(扩展模型头部分支,实现多任务联合训练)

YOLOv11作为Ultralytics团队于2024年9月发布的最新YOLO系列模型,在前代版本基础上进行了多项架构创新,使其成为支持多任务学习的理想框架。其核心改进包括引入C2PSA(跨阶段局部自注意)模块,将跨阶段局部网络和自注意机制优势结合,使模型能够更有效地跨多层捕获上下文信息。C3k2模块取代了之前的C2f模块,作为CSP Bottleneck的自定义实现,使用两个较小卷积核而非一个大卷积核,在保持准确性的同时提高了效率。 多任务学习(Multi-Task Learning, MTL)在YOL

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 656

volta node npm yarn下载安装

这四个是前端常见环境与工具。

lklalmq的博客 1565

【Unity 实用工具篇】✨| 使用Fungus插件制作一个对话系统,简单好学易上手

今天带来的是Unity中一款简单易用的对话插件Fungus,它是一个免费的交互式的对话系统。 Fungus是Unity免费的一款开源的插件,它可以无代码的实现玩家与NPC之间的对话,并且支持本地化,对相机、Sprite及音乐音效的控制。 学会使用该插件就可以做一些对话剧情类的游戏了,还是非常好用的,下面就来学习一下Fungus具体怎么使用吧!

努力前行,总会成为自己心中的那道光 1万+

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Volta前端管理工具

简单来说:相对于nvm来说,它可以自动识别项目中的node版本进行切换,不需要开发者手动切换。支持跨平台(Windows、Mac、Linux)最好提前卸载其他的包管理工具,以免有问题。为什么使用volta?3.volta相关命令。

weixin_43520189的博客 464

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

吊打 NVM 的 4 款 Node.js 版本工具!

NVM虽然经典,但在面对多语言支持和更复杂的项目需求时,显得有些力不从心。VMRvfoxVolta和Fnm等新一代包管理工具不仅提供了更强大的功能,还带来了更好的用户体验。无论你是Node.js开发者,还是需要管理多种编程语言的工程师,这些工具都能为你带来极大的便利。选择合适的工具,让开发变得更加高效和愉快!

zhudapeng929的博客 2766

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

前端环境搭建:nvm、volta 的使用 node 版本管理工具 nrm 镜像 及 Clink 命令智能提示

前端开发环境搭建:nvm、volta 的使用 node版本管理工具及 nrm镜像源、npm镜像失效、node管理工具、包管理工具、脚手架、git、clink;ansstory;

Story_0809的博客 8513

还在用nvm做node管理工具?快来试试Volta吧!

还在用nvm做node管理工具?快来试试Volta吧!

w1404273025的博客 993

两种好用的Node 版本管理工具

Node版本管理工具

Curtis的博客 529

volta(轻松切换管理Node.js版本)

Volta 既可以全局使用,也可以在项目级别使用,可以为每个项目单独设置node版本,nvm不行。提供了一个简单直观的命令行界面,可以轻松地安装、卸载、更新和切换Node.js版本。

Rziziの博客 1752

volta教程 下载安装使用

再用 MSI 安装 → 这时 Volta 会自动用 D 盘路径下载 .msi 文件后直接双击安装。

周周的博客 1534

常见 Node.js 版本管理器比较:nvm、Volta 和 asdf

随着 Node.js 的发展,能够管理不同版本的运行时以确保兼容性和稳定性非常重要。这就是 Node.js 版本管理器的用武之地!在本文中,我们将比较和对比三种流行的 Node.js 版本管理器:**nvm、volta** 和 **asdf,**来帮助你为你的开发环境选择合适的版本管理器。

p1967914901的博客 3491

Python 虚拟环境 看这一篇就够了

文 |太阳雪来源:Python 技术「ID: pythonall」Python 之所以强大,除了语言本身的特性外,更重要的是拥有无所不及的第三方库。强大的软件库,让开发者将精力集中在业...

简说Python的博客 2万+
上一篇: 代码片段精选 #001:合并列表
下一篇: 下载量过亿的 15 个 Python 库
codingpy
博客等级 码龄11年 1873粉丝 104原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值