从原版nodejs到使用 nvm 管理 Node.js 版本
—— 完整迁移与版本控制操作指南(Windows 平台)
nvm-windows · 环境备份 · 卸载重装 · 多版本切换
本文档提供一套完整的 Node.js 版本管理迁移方案:先备份现有环境信息,再卸载旧版 Node.js,安装 nvm-windows 版本控制器,下载所需版本并完成切换,最后依据备份清单恢复全局依赖包,实现多版本共存与自由切换。
一、前置准备:完整备份当前环境
在动手操作之前,必须先完整记录当前 Node / npm 信息,制作安装包清单的备份。这些备份数据是后续重建全局包、以及出现问题时回滚到原环境的重要依据。
1.1 记录当前 Node 与 npm 版本
node -v
npm -v
1.2 导出全局包清单(备份关键)
列出所有全局安装的包,并同时保存为文本与 JSON 两种格式:(保存路径自己定)
npm list -g --depth=0
npm list -g --depth=0 > global-packages-backup.txt
npm list -g --depth=0 --json > global-packages-backup.json
1.3 记录关键路径与配置
npm root -g # 全局包安装路径
npm config list # npm 配置信息
node -e "console.log(process.execPath)" # Node 可执行文件路径
npm config get userconfig # 用户级 .npmrc 路径
npm config get globalconfig # 全局级 .npmrc 路径
1.4 记录系统环境变量
记录 PATH 环境变量中与 Node / npm 相关的所有条目,以及是否存在 NODE_PATH、NODE_HOME 等自定义变量。这些信息用于卸载后彻底清理,避免残留冲突。
提示:建议将以上所有输出内容集中保存到一个备份文件夹(如 D:\node-backup\),包括 global-packages-backup.txt / .json 两个文件,方便后续恢复时逐一对照。
二、卸载原有的 Node.js
2.1 通过控制面板卸载
1. 打开「控制面板 → 程序和功能」(或「设置 → 应用 → 已安装的应用」)。
2. 在列表中找到「Node.js」,右键选择「卸载」。
3. 按照卸载向导的提示完成卸载过程。
2.2 清理残留文件与目录
卸载程序可能残留部分文件,需手动删除以下目录(如存在):
C:\Program Files\nodejs
C:\Program Files (x86)\nodejs
%AppData%\npm
%AppData%\npm-cache
2.3 清理环境变量
打开「系统属性 → 环境变量」,删除 PATH 中与 Node / npm 相关的所有条目,并删除 NODE_PATH、NODE_HOME 等自定义变量。
2.4 验证卸载是否彻底
node -v
npm -v
where node
若以上命令均提示「不是内部或外部命令」或返回空结果,说明卸载已彻底完成,可进入下一步。
三、安装 nvm-windows
3.1 下载安装包
从 nvm-windows 官方仓库下载最新版安装包:
推荐下载 nvm-setup.exe。
3.2 执行安装
4. 双击运行 nvm-setup.exe,按提示完成安装。
5. 注意:安装路径(nvm 根目录与 nodejs 符号链接目录)不要包含空格或中文,建议使用默认路径 C:\Users<用户名>\AppData\Roaming\nvm。
6. 安装过程中如提示「是否已存在 Node.js」,选择由 nvm 接管管理。
3.3 验证安装成功****
nvm version
nvm -v
四、下载需要的 Node.js 版本
4.1 查看可安装的版本列表
nvm list available
4.2 安装所需版本
根据项目需求安装一个或多个版本(建议优先选择 LTS 长期支持版本):
nvm install 18.20.4 # Node 18 LTS
nvm install 20.18.0 # Node 20 LTS
nvm install 22.12.0 # Node 22
nvm install 24.16.0 # 根据自己需求下载
4.3 查看已安装的版本
nvm list
五、切换到目标版本并按备份清单安装依赖包
5.1 切换 Node 版本
nvm use 20.18.0
切换完成后验证版本是否生效:
node -v
npm -v
5.2 设置默认版本(可选但推荐)
设置一个默认版本,避免每次打开新终端都需要手动切换:
nvm alias default 20.18.0
5.3 依据备份清单恢复全局包
打开第一步保存的 global-packages-backup.txt,按清单逐个安装全局包:
npm install -g <包名>@版本
示例:恢复常用全局工具
npm install -g typescript ts-node pnpm yarn @vue/cli
注意:nvm-windows 下每个 Node 版本拥有各自独立的全局包目录,切换版本后全局包不会自动迁移,需在新版本下重新安装。
5.4 恢复 npm 配置(如使用了镜像源)
npm config set registry registry.npmmirror.com # 可选:设置国内镜像
若原环境配置了公司私有源、代理或 .npmrc 中的鉴权信息,请一并恢复。
5.5 验证恢复结果
npm list -g --depth=0
附录:nvm-windows 常用命令速查
| 命令 | 说明 |
|---|---|
| nvm list | 查看已安装的 Node 版本列表 |
| nvm list available | 查看可下载安装的版本列表 |
| nvm install | 安装指定版本(如 nvm install 20.18.0) |
| nvm uninstall | 卸载指定版本 |
| nvm use | 切换到指定版本 |
| nvm alias default | 设置默认版本 |
| nvm current | 查看当前使用的版本 |
| nvm on / nvm off | 启用 / 停用 nvm 版本管理 |
| nvm root | 查看 nvm 安装根目录 |
注意事项****
l 切换版本后,全局包不会自动迁移,需要在新版本下重新安装。
l nvm-windows 的每个 Node 版本拥有独立的全局包目录,互不干扰。
l 生产与团队协作环境建议统一使用 LTS 版本,避免兼容性问题。
l 某些原生模块(如 node-gyp 编译的包)切换版本后可能需要重新编译。
l 保留第一步的备份文件,便于在出现异常时快速回滚或重建环境。