AX 爱鲜报

nvm 版本管理器

nvm 是一个符合 POSIX 规范的 Bash 脚本工具,用于在命令行中快速安装、切换和管理多个 Node.js 版本,支持 LTS、.nvmrc 自动切换及全局包迁移,是 Node 开发者的常用基础设施。

爱鲜报评分

0.0

0 人评分

96k

星数

否

中文

Shell

主语言

是

活跃

448

贡献者

人工分析

EDITORIAL

推荐理由

近 10 万 Star 的事实标准 Node 版本管理工具,几乎每个 Node 项目都会遇到多版本切换需求。它纯 Shell 实现、无额外运行时依赖,安装脚本一行即可完成,配合 .nvmrc 能让团队统一 Node 版本。对于需要同时维护多个老项目或测试新版本的开发者,几乎是必备工具。

适用场景

  • 本地同时维护多个 Node.js 版本的项目
  • 团队通过 .nvmrc 统一 Node 版本
  • CI/CD 与 Docker 中按需安装指定 Node 版本
  • 测试新版本 Node 或 LTS 升级兼容性
  • 在 macOS、Linux、WSL 上管理 Node 环境

优点

  • 社区庞大、Star 近 10 万,事实标准
  • 纯 POSIX Shell 实现,无额外运行时依赖
  • 支持 .nvmrc 自动切换与全局包迁移
  • 安装脚本一行命令,支持 curl/wget/git
  • MIT 许可,可自由用于商业项目

缺点

  • 仅支持 POSIX Shell,原生 Windows 需借助 WSL 或替代方案
  • 作为 Shell 函数注入,对非交互式 Shell 需额外配置
  • 不管理 npm 之外的全局工具,与 corepack 等需配合
  • 版本切换依赖 Shell 环境,IDE 内可能不生效
上手难度 入门

nvm 是什么

nvm(Node Version Manager)是一个符合 POSIX 规范的 Bash 脚本,用于在命令行中安装和切换多个 Node.js 版本。它按用户安装、按 Shell 会话生效,支持 sh、dash、ksh、zsh、bash 等常见 Shell,可在 Unix、macOS 和 Windows WSL 上运行。

核心能力

  • 多版本共存:一条命令安装任意 Node 版本,随时切换。
  • LTS 支持:可直接安装长期支持版本,适合生产环境。
  • .nvmrc 集成:在项目目录放置 .nvmrc,进入目录即可自动切换版本。
  • 全局包迁移:安装新版本时可迁移已有全局 npm 包。
  • 镜像支持:可配置 Node 二进制镜像,改善下载速度。

基本用法示意

nvm install 24      # 安装 Node 24
nvm use 22          # 切换到 Node 22
nvm ls              # 查看已安装版本
nvm install --lts   # 安装最新 LTS

在项目根目录写入版本号后,配合 Shell 钩子即可实现进入目录自动切换:

echo "22" > .nvmrc

安装方式

官方提供安装脚本,通过 curl 或 wget 下载并执行,脚本会将 nvm 克隆到 ~/.nvm 并向 Shell 配置文件追加加载语句。也可通过 git 克隆或手动安装。Docker 等非交互式环境需通过 BASH_ENV 等方式加载。

适用与注意

nvm 适合需要同时维护多个 Node 版本、或希望团队统一 Node 版本的开发者。注意它只面向 POSIX Shell,原生 Windows 用户需使用 WSL 或替代工具;在 IDE 或非交互式脚本中,版本切换可能不生效,需要额外配置。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。