作者:Mintimate
博客:https://www.mintimate.cn
Mintimate's Blog,只为与你分享
前言
我们构建一些项目,经常需要旧版本的node,如:Hexo目前支持性比较好的版本是v12,而最新的Node稳定版本是v14。这个时候,为了避免bug,我们需要切换Node版本。
警告⚠️:十分不推荐使用NPM下,n模块来管理node版本
环境准备
本次教程,适用于Mac、Linux和Windows,使用NVM管理Node:
- For Mac/Linux:https://github.com/nvm-sh/nvm
- For Windows:https://github.com/coreybutler/nvm-windows
配置前,请事先卸载你已经安装的Node版本和配置的环境变量,避免冲突。
Windows
如果你的操作系统是Windows系统
安装NVM
进入NVM-Windows项目发布地址:https://github.com/coreybutler/nvm-windows/releases,选择最新发行版本下载:
之后,解压出自压缩文件,点击安装:
这边注意⚠️:NVM的安装和配置路径不要有中文,因为我Windows虚拟机只分配C盘,大家可以最好安装到D盘等其他用户盘:
安装完成后,在CMD或者Powershell下,输入NVM,即可发现安装完成:
配置国内源
大陆这边连接Node和NPM源有点忙,进而NVM也比较慢,所以我们换成国内源:
到你NVM安装路径,打开setting.txt文件,追加:
代码语言:txt复制# node使用淘宝源
node_mirror: http://npm.taobao.org/mirrors/node/
# npm使用淘宝源
npm_mirror: https://npm.taobao.org/mirrors/npm/
安装Node
首先,我们输入:
代码语言:txt复制nvm list
查看已经安装的版本
之后,我们安装v12.21版本node:
这样就已经安装好了,我们测试一下也是可以用的:
Mac/Linux
Mac和Linux都可以使用编译安装的方法,安装NVM。但是Mac用户还是推荐使用Homebrew来安装NVM。
安装NVM
以下方法,参考NVM项目发布地址:https://github.com/nvm-sh/nvm。安装完成后,终端输入
代码语言:txt复制nvm
未报command not find
即为安装成功。
Mac专属:Homebrew安装
在安装Homebrew情况下,终端输入:
代码语言:txt复制brew install nvm
即可安装完成。
方法一:脚本安装
之后,在到环境配置文件里,追加:
代码语言:txt复制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
比如:macOS使用ZSH,在.zshrc
内追加:
方法二:常规方法安装
首先,终端依次执行:
代码语言:txt复制cd ~
git clone https://github.com/nvm-sh/nvm.git
mv nvm .nmv
之后,初始化:
代码语言:txt复制 export NVM_DIR="$HOME/.nvm" && (
git clone https://github.com/nvm-sh/nvm.git "$NVM_DIR"
cd "$NVM_DIR"
git checkout `git describe --abbrev=0 --tags --match "v[0-9]*" $(git rev-list --tags --max-count=1)`
) && . "$NVM_DIR/nvm.sh"
最后,在环境变量内,添加:
代码语言:txt复制export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
配置国内源
大陆这边连接Node和NPM源有点忙,进而NVM也比较慢,所以我们换成国内源,在终端内输入:
代码语言:txt复制export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node/
安装Node
首先,我们输入:
代码语言:txt复制nvm list
查看已经安装的版本:
之后,我们安装v12.21版本node:
这样就已经安装好了,我们测试一下也是可以用的:
总结
NVM管理Node就到此介绍,同时给大家总结NVM常用命令:
代码语言:txt复制# 查看已经安装的node版本
nvm list
# 激活某个node为活跃状态,如:启用node v12.21
nvm use 12.21