使用 nvm 管理 node 版本
nvm(Node Version Manager) 是一个为 node.js 设计的版本管理器,设计用于按用户安装,并按 shell 调用。nvm可在任何符合 POSIX 的 shell (sh, dash, ksh, zsh, bash) 上运行,尤其是在这些平台上:unix、macOS 和 windows WSL。
nvm 使您可以通过命令行快速安装和使用不同版本的 Node。
安装nvm
通过安装脚本安装
适用于 macOS/Linux 平台
使用curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
或使用wget
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
运行以上任一命令都会下载一个脚本并运行它。该脚本默认会将 nvm 仓库克隆到 ~/.nvm
,并尝试将下面代码片段中的源代码行添加到正确的配置文件(~/.bash_profile
、~/.zshrc
、~/.profile
或 ~/.bashrc
)中。
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
通过Homebrew安装
适用于 macOS 平台
- 执行安装命令
brew install nvm
- 创建
~/.nvm
目录
mkdir ~/.nvm
- 修改配置
将以下代码添加到对应的配置文件中(~/.bash_profile
、~/.zshrc
、~/.profile
或 ~/.bashrc
)
export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/nvm.sh" ] && \. "/usr/local/opt/nvm/nvm.sh"
[ -s "/usr/local/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/usr/local/opt/nvm/etc/bash_completion.d/nvm"
- 使配置文件生效
source ~/<your_profile_file>
Windows
Windows平台可以直接下载 nvm.exe 进行安装即可。
注意:在运行 nvm install
或 nvm use
时,Windows 通常需要管理员权限(以创建符号链接)。
安装 Node
在安装之前,可以通过 nvm ls-remote
命令来查看可以安装的 node 版本,然后再通过 nvm install
命令来安装指定版本:
- 安装最新的长期支持(LTS)版本
nvm install --lts
- 安装最新版本
nvm install latest / nvm install node
- 安装 16.20.0 版本
nvm install 16.20.0
首次安装的 node 版本将成为默认版本,新的 shell 将使用默认版本的 node 启动。如需修改默认版本,请使用
nvm alias default
命令。
切换 Node 版本
如果安装了多个 Node 版本,可以通过 nvm use
命令来进行切换到指定版本。
- 切换到最新的长期支持版本
nvm use --lts
- 切换到最新版本
nvm use node
- 切换到 16.20.0 版本
nvm use 16.20.0
设置默认 Node 版本
在 macOS 中切换到指定版本后,仅在当前 shell 窗口生效(临时切换),新开 shell 窗口将会继续使用默认的 node 版本。如果需要永久切换到某个版本,可以使用 nvm alias default
设置默认版本。
nvm alias default 16.20.0
切换 Node.js 源
Node.js 官方源 网络不稳定,所以需要切换到国内源。
- 查看当前使用的源
npm get registry
- 使用淘宝源
npm set registry https://registry.npmmirror.com
nvm 常用命令
- 安装指定版本 Node.js
nvm install <version>
- 卸载指定版本 Node.js
nvm uninstall <version>
- 切换到指定版本
nvm use <version>
- 显示当前版本
nvm current
- 查看已安装的版本
nvm list
- 查看可以安装的版本
nvm list-remote
- 给指定版本设置别名
nvm alias <name> <version>
- 删除别名
nvm unalias <name>
- 设置默认版本
nvm alias default <version>