杂的文
nvm,全称 Node Version Manager ,也就是node版本控制;它是一个命令行应用,可以协助您快速地 更新、安装、使用、卸载 本机的全局 node.js 版本。
通常,我们可能同时在进行多个项目开发,而多个项目所使用的node版本又是不一样的,或者是要用最新的node版本进行试验和学习。
这种情况下,对于维护多个版本的node将会是一件非常麻烦的事情,而nvm就是为解决这个问题而产生的,他可以在同一台电脑上进行多个node版本之间的切换,而这正是nvm的价值所在。
使用场景:当你同时进行两个或多个node项目开发,并且这些项目的node版本不一样时,nvm可以很好的帮你管理pc上的node版本切换。
请卸载已安装的node/npm:安装 nvm 之前最好先删除下已安装的 node 和全局 node 模块,避免引起冲突
如果之前是在官网下载的 node 安装包,运行后会自动安装在全局目录,其中node 命令在 /usr/local/bin/node ,npm 命令在全局 node_modules 目录中,具体路径为 /usr/local/lib/node_modules/npm
#查看已经安装在全局的模块,以便删除这些全局模块后再按照不同的 node 版本重新进行全局安装 npm ls -g --depth=0 #删除全局 node_modules 目录 sudo rm -rf /usr/local/lib/node_modules #删除 node sudo rm /usr/local/bin/node
在终端上执行如下命令:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh | bash
从远程下载 install.sh 脚本并执行。注意这个版本年数字 v0.39.2 会随着项目开发而变化。随时通过官方最新安装命令( https://github.com/nvm-sh/nvm#install-script)来检查最新安装版本是有好处的。
踩坑一:xcode-select: note: no developer tools were found at 'xxx'
解决方案: 只要安装xcodeselect插件就好了,不需要下载整个xcode。
命令如下:
xcode-select --install # 单独安装CommandLineTools sudo xcode-select --switch /Library/Developer/CommandLineTools
踩坑二:port 443 错误
curl: Failed to connect to raw.githubusercontent.com port 443
Failed to connect to raw.githubusercontent.com port 443: Connection refused
Failed to connect to raw.github.com port 443: Connection refused
这是由于某些不可描述的原因(你懂的),导致 github / raw.githubusercontent.com 在国内无法正常访问。
解决方案:通过修改hosts解决此问题,
查询真实IP:https://www.ipaddress.com/ -> 查询raw.githubusercontent.com和raw.github.com的真实IP(通常为:199.232.96.133)。
修改hosts,在终端上执行如下命令:
sudo vim /etc/hosts
然后,添加如下内容(通常为:199.232.96.133,或改为查询到的最新IP):
199.232.96.133 raw.githubusercontent.com 199.232.96.133 raw.github.com
或者终极大法,使用国内gitee的源进行安装,执行如下命令:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
扩展资料:来自知乎大佬的Homebrew国内镜像安装
在终端中依此执行如下命令,执行安装:
cd ~ // 进入根目录 git clone https://github.com/nvm-sh/nvm.git // 克隆 cd nvm // 进入 nvm 目录 ./install.sh // 执行编译安装命令 nvm --version // 查看nvm是否安装成功 nvm install v12.15.0 // 安装 node,建议由低到高依次安装 nvm install v16.15.0 // 同上 nvm ls // 查看已安装的node nvm use 12 // 切换node
nvm常规命令:
nvm ls-remote // 列出所有可安装的版本 nvm install // 安装指定的版本,如 nvm install v8.14.0 nvm uninstall // 卸载指定的版本 nvm ls // 列出所有已经安装的版本 nvm use // 切换使用指定的版本 nvm current // 显示当前使用的版本 nvm alias default // 设置默认node版本,如 nvm alias default v18.15.0 nvm deactivate // 解除当前版本绑定
注意事项:nvm 默认是不能删除被设定为 default 版本的 node,特别是只安装了一个 node 的时候,这个时候我们需要先解除当前版本绑定,然后再使用 nvm uninstall 删除
详细流程及常见问题可见下图:
1. git clone 时报错: unable to access
常见克隆时错误,通常跟代理或网络环境有关,命令如下:
git config --global --unset http.proxy git config --global --unset https.proxy git config --global -l env|grep -i proxy
2. 执行编译文件安装时报错: LibreSSL SSL_connect
注:git clone时,如果出现 LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443 错误,请执行如下命令:
sudo networksetup -setv6off Wi-Fi
3. 新终端 nvm 命令报错,command not found: nvm
在新打开的文本编辑器里输入输入内容
cd .nvm touch .bash_profile // 新建文件 open .bash_profile // 打开文件命令(该命令默认会使用mac自带的编辑器,打开该文件) ## 在新打开的文本编辑器窗口中,输入如下内容 export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm ## source .bash_profile // 执行该文件命令
4. 重启电脑后,或 新终端 nvm 命令仍然报错,command not found: nvm
在新打开的文本编辑器里输入输入内容
cd ~ touch .zshrc // 可选,如果没有该文件时,可以通过该命令创建 open .zshrc // 打开文件命令(该命令默认会使用mac自带的编辑器,打开该文件) ## 在新打开的文本编辑器窗口中,输入如下内容 source ~/.bash_profile ## source .zshrc // 执行该文件命令
12