NVM 使用指南(Node Version Manager)

🧾 NVM 使用指南(Node Version Manager)

NVM 是 Node.js 版本管理工具,可帮助你在一台机器上快速切换多个 Node.js 版本。尤其适用于前端 / 全栈 / Node.js 开发者。


🔧 一、NVM 安装

💻 macOS / Linux 安装

执行以下命令安装最新版 NVM:

bash 复制代码
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

或使用 wget:

bash 复制代码
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

安装成功后,请执行:

bash 复制代码
export NVM_DIR="$HOME/.nvm"
source "$NVM_DIR/nvm.sh"

建议添加到 .bashrc / .zshrc / .profile 中:

bash 复制代码
echo 'export NVM_DIR="$HOME/.nvm"' >> ~/.bashrc
echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> ~/.bashrc

然后执行:

bash 复制代码
source ~/.bashrc

🪟 Windows 安装

Windows 用户请下载 nvm-windows(非官方)

  1. 下载 .exe 安装程序并执行
  2. 安装路径建议为:C:\nvm
  3. 安装完毕后打开命令提示符或 PowerShell,输入 nvm 验证

📦 二、NVM 常用命令

📥 安装 Node.js 版本

bash 复制代码
nvm install 18.18.2     # 安装特定版本
nvm install --lts       # 安装最新 LTS 版本
nvm install node         # 安装最新版本(非 LTS)

📌 设置默认版本

bash 复制代码
nvm use 18.18.2              # 临时使用
nvm alias default 18.18.2    # 设置为默认版本

🔄 查看已安装和可用版本

bash 复制代码
nvm ls            # 查看已安装版本
nvm ls-remote     # 查看远程可用版本

🗑 卸载某个版本

bash 复制代码
nvm uninstall 18.18.2

📁 三、不同项目使用不同版本

方法一:使用 .nvmrc 文件(推荐)

在项目根目录创建 .nvmrc

bash 复制代码
echo "18.18.2" > .nvmrc

然后执行:

bash 复制代码
nvm use           # 自动读取 .nvmrc 中的版本并切换

📌 配合 .nvmrc 可在团队项目中自动统一 Node 版本。


🚀 四、常见问题解答(FAQ)

❓ Q1:nvm 命令无效?

可能是终端未加载 nvm,请确认以下配置在 .bashrc.zshrc 中:

bash 复制代码
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

然后执行:

bash 复制代码
source ~/.bashrc  # 或 source ~/.zshrc

❓ Q2:npm 版本不对怎么办?

bash 复制代码
npm install -g npm@latest

每次切换 node 版本后,npm 会随着 node 一起变动,但你可以单独升级。


❓ Q3:如何让 IDE 使用正确版本?

确保你在项目启动前执行了 nvm use。某些 IDE(如 VS Code)可自动识别 .nvmrc


✅ 总结

功能 命令
安装 Node nvm install <version>
使用版本 nvm use <version>
设置默认版本 nvm alias default <version>
查看版本列表 nvm ls / nvm ls-remote
卸载版本 nvm uninstall <version>
使用 .nvmrc 项目内创建 .nvmrc 并运行 nvm use

如需搭配使用 yarnnpx 等工具,NVM 完全兼容。

建议你在所有 Node.js 项目中使用 .nvmrc 文件,避免版本混乱!

如果你需要此文档导出为 Markdown / PDF / Word 文件,也可以告诉我。

相关推荐
爱写程序的小高12 小时前
npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree
前端·npm·node.js
程序员的程13 小时前
我做了一个前端股票行情 SDK:stock-sdk(浏览器和 Node 都能跑)
前端·npm·github
爱写程序的小高15 小时前
npm版本降级、nvm切换node版本、webpack版本与vue版本不一致
前端·npm·node.js
嚣张丶小麦兜16 小时前
npm的应用
前端·npm·node.js
鹏北海1 天前
从弹窗变胖到 npm 依赖管理:一次完整的问题排查记录
前端·npm·node.js
寧笙(Lycode)2 天前
前端包管理工具——npm、yarn、pnpm详解
前端·npm·node.js
李永吉2 天前
一款便捷的npm源管理工具nrm
前端·npm·node.js
鹿衔`2 天前
PySpark 提交模式对比与实践推荐
前端·npm·node.js
Bigger3 天前
构建 “按版本触发、自动发布、自动回写” 的前端组件发布流水线
前端·ci/cd·npm
Rysxt_3 天前
npm与Node.js关系详解及使用教程
前端·npm·node.js