使用 nvm 管理不同版本的 node 与 npm

使用 nvm 管理不同版本的 node 与 npm

补充说明:Mac 下通过 brew install nvm 所安装的 nvm ,由于安装路径不同,无法正确启用。建议使用 brew uninstall nvm 卸载掉之后,通过本文的方案重新安装一次。

---

最近 NodeJS 的版本更新速度有点 Chrome 的迹象,4.0 版本没发布多久,又推出了 5.0 。升级 NodeJS 之后可以很方便的开始使用一些 ES6 的语言特性,但又会导致团队内部的 mz-fis 框架无法更新,因为它暂时只支持 v0.12 版本。于是团队开始试用管理 node 版本的工具  nvm,试用后发现 Mac 下很好用,推荐大家尽快用起来。

nvm 是 Mac 下的 node 管理工具,有点类似管理 Ruby 的 rvm,如果是需要管理 Windows 下的 node,官方推荐是使用 nvmw 或 nvm-windows 。

以下具体说下 Mac 系统中的安装与使用细节(Windows 系统仅供类比参考)。

一、卸载已安装到全局的 node/npm

如果之前是在官网下载的 node 安装包,运行后会自动安装在全局目录,其中

node 命令在 /usr/local/bin/node ,npm 命令在全局 node_modules 目录中,具体路径为 /usr/local/lib/node_modules/npm

安装 nvm 之后最好先删除下已安装的 node 和全局 node 模块:

npm ls -g --depth=0 #查看已经安装在全局的模块,以便删除这些全局模块后再按照不同的 node 版本重新进行全局安装

sudo rm -rf /usr/local/lib/node_modules #删除全局 node_modules 目录sudo rm /usr/local/bin/node #删除 nodecd  /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk ‘{print $9}‘| xargs rm #删除全局 node 模块注册的软链

二、安装 nvm

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash

安装完成后请重新打开终端环境,Mac 下推荐使用 oh-my-zsh 代替默认的 bash shell。

三、安装切换各版本 node/npm

nvm install stable #安装最新稳定版 node,现在是 5.0.0
nvm install 4.2.2 #安装 4.2.2 版本
nvm install 0.12.7 #安装 0.12.7 版本
# 特别说明:以下模块安装仅供演示说明,并非必须安装模块
nvm use 0 #切换至 0.12.7 版本npm install -g mz-fis #安装 mz-fis 模块至全局目录,安装完成的路径是 /Users/<你的用户名>/.nvm/versions/node/v0.12.7/lib/mz-fisnvm use 4 #切换至 4.2.2 版本npm install -g react-native-cli #安装 react-native-cli 模块至全局目录,安装完成的路径是 /Users/<你的用户名>/.nvm/versions/node/v4.2.2/lib/react-native-cli

nvm alias default 0.12.7 #设置默认 node 版本为 0.12.7

四、使用 .nvmrc 文件配置项目所使用的 node 版本

如果你的默认 node 版本(通过 nvm alias 命令设置的)与项目所需的版本不同,则可在项目根目录或其任意父级目录中创建 .nvmrc 文件,在文件中指定使用的 node 版本号,例如:

cd <项目根目录>  #进入项目根目录
echo 4 > .nvmrc #添加 .nvmrc 文件
nvm use #无需指定版本号,会自动使用 .nvmrc 文件中配置的版本
node -v #查看 node 是否切换为对应版本

五、nvm 与 n 的区别

node 版本管理工具还有一个是 TJ 大神的 n 命令,n 命令是作为一个 node 的模块而存在,而 nvm 是一个独立于 node/npm 的外部 shell 脚本,因此 n 命令相比 nvm 更加局限。

由于 npm 安装的模块路径均为 /usr/local/lib/node_modules ,当使用 n 切换不同的 node 版本时,实际上会共用全局的 node/npm 目录。 因此不能很好的满足『按不同 node 版本使用不同全局 node 模块』的需求。

因此建议各位尽早开始使用 nvm ,以免出现全局模块无法更新的问题。

当然,如果你用的是 windows 操作系统,我只能说 …… 朋友,能不能早点换个 Mac ,做一个有品位的程序猿呢:P

时间: 2024-10-12 14:27:29

使用 nvm 管理不同版本的 node 与 npm的相关文章

安装nvm管理多版本nodejs

1.简介(什么是nvm) Node Version Manager(node版本管理器),用它在机器上安装并维护管理多个Node的版本 2.nvm临时切换(临时切换版本,只在当前终端内有效,新开终端无效.) (1) 如果您还未安装npm,那么请您先安装npm (2) 随后安装nvm: cd nvm source nvm.sh git clone https://github.com/creationix/nvm.git (3) 检查nvm安装版本 nvm --version (4) 安装指定的n

Windows 下安装 nvm 管理 nodejs 版本

摘自https://segmentfault.com/a/1190000007612011 1. 下载安装与使用 Github: Download nvm-windows --- nvm-setup.zip 程序安装过程中,在 Set Node.js Symlink 这一步目录设置,是待会 nvm use 存放你的 nodejs 程序的目录 [C:\\DevTools\\nodejs]. nvm命令汇总 1.查看有哪些 node 版本 命令:nvm ls-remote2.查看本地node版本nv

在ubuntu上安装最新稳定版本的node及npm

最新版本安装方法 今日捣鼓了一下ubuntu,发现nodejs总是没法升级到最新版,捣鼓了几个小时,记录一下. 1.安装npm sudo apt install npm 2.升级npm为最新版本 sudo npm install [email protected] -g 此时通过npm -v可以发现npm版本号为最新版本4.10.3; 3.安装用于安装nodejs的模块n sudo npm install -g n 4.然后通过n模块安装指定版本的nodejs,n模块更多介绍请参考官方文档 //

没有admin权限如何免安装使用Node和NPM

此教程只针对于在windows系统上没有admin权限和软件安装权限,但是又希望能像安装版一样使用Node和NPM的用户. 步骤一: 下载压缩版node 访问https://nodejs.org/en/download, 根据自己的系统,选择下载32位或者64位的免安装压缩包版node.解压压缩包,将node.exe文件拷贝到自己想要存放node的路径,比如C:annannodejs. 步骤二: 下载压缩版NPM 访问https://github.com/npm/npm/releases, 下载

node ,npm和nvm 版本的管理

node npm :node 的包管理 nvm :node 的版本管理 node -v ---->查看node 的版本  (v---->version) npm -v ----->npm 的版本 nvm --version ---->nvm 的版本 升级node的版本  ----> 安装node的版本 ----->npm -g install [email protected]  (安装npm 的版本是3.0.0) 升级node版本: npm install -g n

【前端开发】nrm切换淘宝镜像&amp;nvm管理node版本及切换

说明:nrm是切换淘宝镜像用的,nvm是node的版本切换用的(可在自己电脑安装多个版本node,便于不同项目的支持) 一.nrm的安装及常见命令: 安装nrmnpm install -g nrm 查看镜像列表nrm ls 切换镜像nrm use taobao 在nrm添加自己的镜像地址nrm add r_name r_url 删除nrm del r_name 测试镜像的相应速度nrm test r_name 二.使用nvm管理node版本及切换 第一步:下载nvm可以到这里下载链接:https

使用nvm来管理nodejs版本

nvm 是 Mac 下的 node 管理工具,有点类似管理 Ruby 的 rvm,如果是需要管理 Windows 下的 node,官方推荐是使用 nvmw 或 nvm-windows .nvm主要用来在不同的nodejs版本中切换,以便当node出新版本时,可以使用一些新的特性 nvm安装 git clone https://github.com/creationix/nvm.git ~/.nvm 然后打开 ~/.bashrc , 在其中添加: source ~/.nvm/nvm.sh 重新ss

mac 系统下nvm管理node安装遇到的问题

入职新公司架构与技术攻关组,压力超大.基于node.js架构公司基础前端框架,由于本人无知一下子把自己电脑(mac)中的node升级到6.x,但公司需要的node版本是5.x,所以要换回来,删除又麻烦,跑去问前端大神,直接说nvm管理node的切换..... 回来折腾 网上链接:https://www.5288z.com/?p=1862 操作过程中遇到bashrc权限问题,经过网上搜索,各种蛋疼.最后把brashrc拷贝出来,再把命令输入进去.再拷贝到系统文件中,ok,解决了

使用nvm管理多个不同版本的nodeJS之安装成功nodeJs之后使用npm报错的问题

使用nvm安装nodeJS之后,node -v命令可以正常使用,但是npm命令一直报“npm不是内部命令”的错误,深入研究之后得到以下解决方案: 搭建步骤: (1)下载nvm   https://github.com/coreybutler/nvm-windows/releases ,从中选一个版本下载解压并且安装. (2)安装过程: 安装nvm的地址设为:"C:\softtool\nvm",node地址设为:"C:\softtool\nodejs".这里需要注意地