现在的前端项目基本都用node、webpack这些工具进行管理了,在前端开发多个开发项目时不同项目可能会依赖不同node版本,在项目之间切换时也要切换node环境,这里介绍一个工具NVS(Node Version Switcher),可以很方便地切换node版本
安装
- windows
windows可以直接在github发布页上下载msi程序安装
也可以通过 chocolatey 安装:
choco install nvs
cmd也可以手工安装:
通过cmd安装:
- 设置nvs目录,根据需求选一个执行:
set NVS_HOME=%LOCALAPPDATA%\nvs //为当前用户安装
set NVS_HOME=%ProgramData%\nvs //为所有用户安装
cmd- 克隆nvs仓库:
git clone https://github.com/jasongin/nvs "%NVS_HOME%"
cmd- 执行安装脚本:
"%NVS_HOME%\nvs.cmd" install
cmd通过powershell安装:
- 设置nvs目录,根据需求选一个执行:
$env:NVS_HOME="$env:LOCALAPPDATA\nvs" //为当前用户安装
$env:NVS_HOME="$env:ProgramData\nvs" //为所有用户安装
PowerShell- 克隆nvs仓库:
git clone https://github.com/jasongin/nvs "$env:NVS_HOME"
PowerShell- 执行安装脚本:
. "$env:NVS_HOME\nvs.ps1" install
PowerShell- mac,linux,wsl
mac和linux执行以下命令即可完成安装:
export NVS_HOME="$HOME/.nvs"
git clone https://github.com/jasongin/nvs "$NVS_HOME"
. "$NVS_HOME/nvs.sh" install
Bash使用
安装完成后,直接执行nvs命令,会让你选择一个node版本下载,直接使用上、下键选择后回车就可以安装:
$ nvs
.----------------------------.
| Select a node version |
+----------------------------+
| [a] node/16.4.2 |
| b) node/16.4.1 |
| c) node/16.4.0 |
| d) node/16.3.0 |
| e) node/16.2.0 |
| f) node/16.1.0 |
| g) node/16.0.0 |
| h) node/15.14.0 |
| i) node/15.13.0 |
| j) node/15.12.0 |
| k) node/15.11.0 |
| l) node/15.10.0 |
| m) node/15.9.0 |
| n) node/15.8.0 |
| o) node/15.7.0 |
'--\/------------------------'
Type a hotkey or use Down/Up arrows then Enter to choose an item.
Bash也可以通过nvs add命令安装:
nvs add lts
nvs add latest
nvs add 16.4.0
Bash通过nvs use命令选择node版本使用,而已可以直接使用nvs命令通过交互选择node版本:
$ nvs use latest
PATH -= ~/.nvs/node/14.17.3/x64/bin
PATH += ~/.nvs/node/16.4.2/x64/bin
$ nvs use lts
PATH -= ~/.nvs/node/16.4.2/x64/bin
PATH += ~/.nvs/node/14.17.3/x64/bin
Bash通过nvs link命令设置默认node版本:
$ nvs link 16.4.0
~/.nvs/default -> ~/.nvs/node/16.4.0/x64
Bash也直接执行nvs link把当前版本设置为默认版本,执行nvs unlink取消默认版本设置
其他更多命令可以执行nvs -h查看说明。
总结
管理node版本有很多工具,之前有用过nvm for windows、nvm,但是发现这个nvs是跨平台的,就用上这个了,现在通过docker管理node版本也是一个很好的方案。