nvm 版本管理器
nvm 是一个符合 POSIX 规范的 Bash 脚本工具,用于在命令行中快速安装、切换和管理多个 Node.js 版本,支持 LTS、.nvmrc 自动切换及全局包迁移,是 Node 开发者的常用基础设施。
爱鲜报评分
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 或非交互式脚本中,版本切换可能不生效,需要额外配置。
评论
- 暂无评论,来写第一条吧。