mac上管理不同node版本

通过nvm来管理

场景:同组的同事使用node版本是5.7.0,而本机安装了node 7.2.0,如何兼容?

使用nvm管理。

  • 使用Homebrew安裝nvm
  • 使用nvm安裝Node.js
  • 使用nvm無痛切換Node.js版本
安装nvm
brew install nvm
使nvm生效
source $(brew --prefix nvm)/nvm.sh

或者:

echo "source $(brew --prefix nvm)/nvm.sh" >> .bash_profile
. ~/.bash_profile
使用nvm安裝Node.js
nvm ls-remote

查看可用版本:

v0.10.20
v0.10.21

安装:

nvm install <version>

比如:

nvm install v5.7.0

还有

nvm install v7.2.0
使用nvm無痛切換Node.js版本

nvm會把各個版本的node安裝在/usr/local/opt/nvm底下。可以看看該目錄底下放了哪些東西:

 $ ls /usr/local/opt/nvm
INSTALL_RECEIPT.json  LICENSE.md  alias  bin  nvm.sh  v5.7.0  v7.2.0

我們可以發現透過nvm安裝這兩個版本,事實上會在nvm目錄下另外建立了v5.7.0以及v7.2.0兩個目錄來分別存放node的binary檔。又nvm會在你的$PATH最前面安插指定版本的目錄,透過這個方式你在使用node指令時就會用指定的版本來運作了。

實際確認PATH的值看看:

 $ echo $PATH
/usr/local/opt/nvm/v5.7.0/bin: ...

查看当前可用版本

nvm ls

切换版本:

nvm use <version>

比如

nvm use --delete-prefix v5.7.0

也可以偷懶一點,不用打完整的版號:

$ nvm use --delete-prefix 5.7
Now using node v5.7.0

切換成別的版本:

$ nvm use --delete-prefix 7
Now using node v7.2.0

不過問題來了,如果你另外開一個shell視窗,並輸入nvm,會發現current version是空的:

 $ nvm ls

  v0.10.24
  v0.11.10
current: 

這是因為利用nvm use指令只會在當前的shell生效,當你開了新的shell就會發現$PATH的值已經不包含剛才設定的node目錄了。
要解決這個問題就是利用

$ nvm alias default <version>

來設定一個預設的node版本:

 $ nvm alias default 5.7.0
default -> 5.7 (-> v5.7.0)

此時再打開另一個shell視窗,就可以直接使用你所設定的node版本了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值