node.js版本控制器nvm的使用

介绍如何使用 node.js 的版本控制工具 nvm。可用于切换不同版本的 node.js。

安装

进入安装包下载地址 nvm 安装包 github地址 ,下载后,直接解压安装即可。

注: 如果已经单独安装了 node ,请先行卸载该 node ,因为nvm 会将你 usenode 版本安装到你设置的path 路径中。

如何修改当前 node 的保存路径

nvm 文件夹下的 settings.txt 文件中修改 path 字段即可。

1
2
root: E:\nvm
path: E:\nodejs

环境变量设置

注:nvm-1.1.6 及以下版本,默认不会在安装时自动配置环境变量,所以如果没有正确设置 nvm 的环境变量,会导致如下错误。

1
2
3
4
5
6
7
8
9
10
11
elenh@elenh MINGW64 ~/Desktop
$ node -v
bash: node: command not found

elenh@elenh MINGW64 ~/Desktop
$ npm -v
bash: npm: command not found

elenh@elenh MINGW64 ~/Desktop
$ nvm -v
bash: nvm: command not found

新版的 nvm-1.1.7不存在这个问题,她会在安装时自动为你设置好环境变量。所以如果你使用的是 nvm-1.1.7 及以上版本,那么下面的环境变量设置流程你可以忽略不看。

window 10下设置流程:

  • 找到控制面板

  • 点击进入系统和安全

  • 点击进入 系统

  • 点击左侧高级系统设置

  • 点击弹窗中的 环境变量

  • 系统变量 模块 新建一个系统变量 NVM_HOME 并将值设置为 你安装的 nvm 所在目录。

  • 再在系统变量 模块新建一个系统变量 NVM_SYMLINK 并将值设置为 node 所在目录。

  • 最后将 %NVM_HOME%%NVM_SYMLINK% 添加进 path 变量中保存确定即可。

到此便配置完成,现在你可以在任意地方打开 cmd.exepowershell.exegit.exe

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 查看 nvm 版本
nvm -v

Running version 1.1.6.

Usage:

nvm arch : Show if node is running in 32 or 64 bit mode.
nvm install <version> [arch] : The version can be a node.js version or "latest" for the latest stable version.
Optionally specify whether to install the 32 or 64 bit version (defaults to system arch).
Set [arch] to "all" to install 32 AND 64 bit versions.
Add --insecure to the end of this command to bypass SSL validation of the remote download server.
nvm list [available] : List the node.js installations. Type "available" at the end to see what can be installed. Aliased as ls.
nvm on : Enable node.js version management.
nvm off : Disable node.js version management.
nvm proxy [url] : Set a proxy to use for downloads. Leave [url] blank to see the current proxy.
Set [url] to "none" to remove the proxy.
nvm node_mirror [url] : Set the node mirror. Defaults to https://nodejs.org/dist/. Leave [url] blank to use default url.
nvm npm_mirror [url] : Set the npm mirror. Defaults to https://github.com/npm/npm/archive/. Leave [url] blank to default url.
nvm uninstall <version> : The version must be a specific version.
nvm use [version] [arch] : Switch to use the specified version. Optionally specify 32/64bit architecture.
nvm use <arch> will continue using the selected version, but switch to 32/64 bit mode.
nvm root [path] : Set the directory where nvm should store different versions of node.js.
If <path> is not set, the current root will be displayed.
nvm version : Displays the current running version of nvm for Windows. Aliased as v.

如上所示,打印出了正确的 nvm 版本,就表示 nvm 已经安装成功了,接下来使用 nvm 的安装命令来安装你需要的 node 版本。

下载源配置

由于 nvm 默认的下载地址 http://nodejs.org/dist/ 是外国外服务器,网速不快的时候,经常会导致 npm 下载失败,所以可以设置 nodenpm 的下载源地址为淘宝镜像,速度还是很可观的。

1
2
3
4
5
# 设置 nodejs 的下载源地址
nvm node_mirror https://npm.taobao.org/mirrors/node/

# 设置 npm 的下载源地址
nvm npm_mirror https://npm.taobao.org/mirrors/npm/

你也可以通过直接修改 nvm 安装包里的 settings.txt 文件:

1
2
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

简单使用

1
nvm install 10.19.0

安装完成后,使用 nvm ls 命令,可以查看你已经安装了哪些版本的 node

然后再使用 nvm on 命令启用 nvm

接着再使用 nvm use 10.19.0 命令,切换到 node v10.19.0

为了检验是否切换成功了,可以使用下面的方式进行检查。

1
2
3
4
5
6
7
8
elenh@elenh MINGW64 ~/Desktop
$ node -v
v10.16.3

elenh@elenh MINGW64 ~/Desktop
$ npm -v
6.9.0

打印出了正确的 nodenpm 版本,就表示切换成功了。

常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# 查看nvm是否安装成功,安装成功则会显示当前版本号和一些命令说明
nvm -v

# 查看nvm的当前版本
nvm version

# 安装最新版node
nvm install

# 安装某个版本的node
# 例:nvm install v10.15.2 64 安装64位的,版本为 10.15.2 的node
nvm install <version> [arch]

# 卸载某个版本
nvm uninstall <version>

# 开启 nvm
nvm on

# 禁用 nvm
nvm off

# 查看已被管理的版本
nvm ls

# 查看可安装的 nodejs 版本
nvm list available

# 切换node版本
nvm use <version> [arch]

# 显示当前版本
nvm current

# 给不同的版本号添加别名
nvm alias <name> <version>

# 删除已定义的别名
nvm unalias <name>

# 查看设置与代理
nvm proxy

# 设置或者查看setting.txt中的node_mirror,如果不设置的默认是 https://nodejs.org/dist/
nvm node_mirror [url]

# 设置或者查看setting.txt中的npm_mirror,如果不设置的话默认的是 https://github.com/npm/npm/archive/.
nvm npm_mirror [url]

# 设置和查看root路径(nvm的安装路径)
nvm root [path]

# 在当前版本node环境下,重新全局安装指定版本号的npm包
nvm reinstall-packages <version>