在開發時,基於 Node 所開發的軟體越來越多,而有些軟體會因為每個用戶所安裝的 Node 版本不同造成無法正常被執行的情況,這時候我們就可以透過 nvm 來管理與版本切換。
可以用 curl 來安裝,在終端機輸入:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
加入環境變量:將這兩行加到檔案最後面。
export NVM_DIR="${XDG_CONFIG_HOME/:-$HOME/.}nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion
完成後输入這一行,並重新開啟:
source ~/.zshrc
最後可以用這行確認是否安裝成功:
command -v nvm
輸入這一行可以看到所有可以提供安裝的 npm 版本:
$ nvm ls-remote
要安裝 npm 時直接輸入下面這一行,version 的部分就填入版本就可以直接安裝,例如:v9.11.2
$ nvm install <version>
安裝完成後可以透過這一行來檢視目前可以使用的版本:
$ nvm ls
要切換版本相當簡單
只要使用這一行就可以快速切換版本
$ nvm use <version>
成功切換就會顯示如下圖
比較偷懶一點,也可以不輸入 v 以及完整的詳細版本號,例如:
$ nvm use 9.11
仍然可以成功讀取
確認目前使用的版本號:
$ nvm use node
如果覺得版本號實在太難記得,又不想每次都先查看安裝可被使用的有哪些,也可以自己為已經安裝的版本號取名,讓下次要切換時,只要輸入名字就可以了。
$ nvm alias <Name> <version>
例如:
$ nvm alias stable-version 9.11.2
就可以直接使用這個名字來做切換:
從剛剛的 nvm ls 指令可以看出來 node 是有預設的使用版本,因此在使用時要特別注意,使用 nvm use 是僅限於在當前的 shell 才有被切換,如果重新開啟檔案或是開了新的 shell 或是窗,就會回到預設的版本號,而非 nvm use 所使用的了。
如果要更換預設的版本,可以輸入下面這一行來設定預設的版本:
$ nvm alias default <version>
nvm 指令小整理
指令 | 功能 |
---|---|
command -v nvm | 檢查 nvm 是否安裝成功,如果是會輸出 nvm |
nvm ls-remote | 查看目前可安裝版本 |
nvm ls-remote | 篩選特定版本 |
nvm install | 安裝特定版本 |
nvm ls | 查看本地目前安裝的版本 |
nvm use | 切換版本,但切換視窗會回到預設版本 |
nvm alias default | 更改預設版本 |
透過 nvm 就可以快速切換 Node 版本,對於管理多個文件或專案的開發者來說,真的是非常適合來拿管理版本的工具呢!
這邊可以參考完整的文件: https://github.com/creationix/nvm
您好,請問如何加入環境變量?
加入環境變量:將這兩行加到檔案最後面。
export NVM_DIR="${XDG_CONFIG_HOME/:-$HOME/.}nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion