簡單談談node.js 版本控制 nvm和 n_node.js
今天的話題包括2個部分
1. node.js 下使用 nvm 或 n 來進行版本控制
2. nvm 安裝node.js 版本後,重啟終端 node , npm 環境變數失效
第一部分 用什麼來管理 node.js 版本
首先應該歡呼慶祝一下node.js 終於發布了有歷史意義的正式版1.0 ,雖然我們看到的是V4.0,其實他就是node.js 真正意義的1.0, io.js 不負眾望,完成了它的使命.
回頭看這幾年node.js 以及io.js 的發展速度,各種版本的迭代發布,我們很有必要用一個node.js 的版本管理工具來控制當前系統的node.js 版本.
為什麼這樣做?
在新的版本中已經用上了最新的V8引擎,ES 6的所有新特性一展身手,你能忍得住嗎?
但是,如果你魯莽升級,第一個問題是 你的開發環境和線上發布環境可能不一樣,那麼後果就不用多少了,出了問題 等著老闆來鞭屍吧.
第二個問題 可能是之前的一些開源套件需要重新編譯,尤其是 c 模組寫的.
所以,你需要一個 node.js 的版本管理軟體
現在流行的 node.js 版本管理有哪些?
nvm
我們用 brew 安裝 nvm
brew install nvm
這裡要注意
brew 安裝後一定要在你的 bash 或 zsh 設定檔中設定一下,否則 當你重新啟動終端機,你會發現 node ,npm 環境變數都失效了
這裡要穿插說一下我們要分享的第二個主題
nvm 重啟後終端 node ,npm 失效的解決方案
如果你使用了上面的 brew 的安裝方法
當安裝成功後,請按照以下操作設定你的 shell 設定檔
brew info nvm
你會看到下面的輸出幫助資訊
nvm: stable 0.26.1 (bottled), HEAD Manage multiple Node.js versions https://github.com/creationix/nvm /usr/local/Cellar/nvm/0.26.1 (3173 files, 56M) * Poured from bottle From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/nvm.rb ==> Caveats Add NVM's working directory to your $HOME path (if it doesn't exist): mkdir ~/.nvm Copy nvm-exec to NVM's working directory cp $(brew --prefix nvm)/nvm-exec ~/.nvm/ Add the following to $HOME/.bashrc, $HOME/.zshrc, or your shell's equivalent configuration file: export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh Type `nvm help` for further information. Bash completion has been installed to: /usr/local/etc/bash_completion.d
我們需要按照上面提供的方法,首先在使用者更目錄下 建立 .nvm 檔案
mkdir ~/.nvm
然後把 nvm-exec 檔案拷貝到你剛才新建的 .nvm 目錄下
cp $(brew --prefix nvm)/nvm-exec ~/.nvm/
然後去編輯你的 bash 設定檔 $HOME/.bashrc ,如果你 使用 zsh 那麼編輯 $HOME/.zshrc 設定檔
nano ~/.bashrc
或
nano ~/.zshrc
把下面的內容貼進去
export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh
最後讓你的 shell 配置及時生效
source ~/.bashrc
或
`source ~/.zshrc'
最後你就不會再出現關閉終端重啟,或重啟機器發現 node ,npm 等系統環境變數失效的問題了.
nvm 和 n 的差別
nvm 類似 Python 的 virtualenv 或 Ruby 的 rvm ,它是獨立安裝的軟體
n 其實是一個 npm 全域的開源套件 ,需要使用 npm 來全域安裝
n 更加輕巧,但是 nvm 更獨立.
假如你有一台新帶電腦,如果你想使用 版本管理,那麼 nvm 是你的選擇,因為它的獨立的軟體,安裝後你可以隨意下載切換你需要的版本.
但是 n 是依賴在 npm 下的一個包,也就是說 你的電腦環境還沒有 node / npm 的時候,你還用不了 n .
所以在使用的時候,大家可以針對自己的情況權衡.我自己使用 nvm 來控制 node 版本.
nvm 使用
查看可以安裝的版本
nvm ls-remote
查看已經安裝的版本
nvm ls
安裝一個指定的版本
nvm install <version>
上面的 version 可以指定你在 nvm ls-remote 裡面列出來的版本號碼即可
刪除指定版本
nvm use <version>
n 的安裝
npm install -g n
當然,你還可以去 github 下載你的源代碼自己本地編譯
$ git clone https://github.com/visionmedia/n.git $ cd n $ [sudo] make install n 安装指定版本 n stable/laster/< version>
在 n 後面更一個標識 stable 標識最新穩定版, laster 標識最新版 ,
n 使用一个版本 n use <version> n 删除一个版本 n rm <version>

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題











SVN簡介SVN(Subversion)是一種集中式版本控制系統,用於管理和維護程式碼庫。它允許多個開發者同時協作開發程式碼,並提供對程式碼歷史修改的完整記錄。透過使用SVN,開發者可以:保障程式碼穩定性,避免程式碼遺失和損壞。追蹤程式碼修改歷史,輕鬆回滾到之前的版本。協同開發,多個開發者同時修改程式碼而不會衝突。 SVN基本操作要使用SVN,需要安裝SVN客戶端,例如TortoiseSVN或SublimeMerge。然後,您可以按照以下步驟執行基本操作:1.建立程式碼庫svnmkdirHttp://exampl

Python開發經驗分享:如何進行版本控制和發布管理引言:在Python開發過程中,版本控制和發布管理是非常重要的環節。透過版本控制,我們可以輕鬆追蹤程式碼的變更、協同開發、解決衝突等;而發布管理則能夠幫助我們組織程式碼的部署、測試和發布流程,確保程式碼的品質和穩定性。本文將從版本控制和發布管理兩個方面,分享一些Python開發中的經驗和實踐。一、版本控製版本控

PHP程式碼版本控制:PHP開發中常用的版本控制系統(VCS)有兩個:Git:分散式VCS,開發人員本地儲存程式碼庫副本,方便協作和離線工作。 Subversion:集中式VCS,程式碼庫唯一副本儲存在中央伺服器上,提供更多控制。 VCS幫助團隊追蹤變更、協作並回滾到早期版本。

Java開發中如何進行版本控制和程式碼管理,需要具體程式碼範例摘要:隨著專案規模的擴大和團隊協作的需要,版本控制和程式碼管理成為了Java開發中至關重要的方面。本文將介紹版本控制的概念、常用的版本控制工具,以及如何進行程式碼管理。同時,也將提供具體的程式碼範例以幫助讀者更好地理解和實踐。一、版本控制的概念版本控制是一種記錄文件內容變更的方式,以便將來查閱特定版本的文件

版本控制:基礎版本控制是一種軟體開發實踐,允許團隊追蹤程式碼庫中的變更。它提供了一個中央儲存庫,其中包含專案文件的所有歷史版本。這使開發人員能夠輕鬆回滾錯誤,查看不同版本的差異,並協調對程式碼庫的並發變更。 Git:分散式版本控制系統git是一種分散式版本控制系統(DVCS),這表示每個開發人員的電腦都擁有整個程式碼庫的完整副本。這消除了對中心伺服器的依賴,提高了團隊的靈活性和協作能力。 Git允許開發人員建立和管理分支,追蹤程式碼庫的歷史,並與其他開發者共用變更。 Git與版本控制:關鍵區別分散式vs集

1.分支與合併分支允許您在不影響主分支的情況下試驗程式碼變更。使用gitcheckout建立新分支,並在嘗試新功能或修復錯誤時使用它。完成後,使用gitmerge將變更合併回主分支。範例程式碼:gitcheckout-bnew-feature//在new-feature分支上進行更改gitcheckoutmaingitmergenew-feature2.暫存工作使用gitadd將您要追蹤的變更新增至暫存區。這使您可以選擇性地提交更改,而無需提交所有修改。範例程式碼:gitaddMyFile.java3

如何在PHP開發中進行版本控制與程式碼協作?隨著互聯網和軟體產業的迅速發展,軟體開發中的版本控制和程式碼協作變得越來越重要。無論是獨立開發者還是團隊開發,都需要一個有效的版本控制系統來管理程式碼的變更和協同工作。在PHP開發中,有幾個常用的版本控制系統可以選擇,如Git和SVN。本文將介紹如何在PHP開發中使用這些工具來進行版本控制和程式碼協作。第一步是選擇適合自己

如何進行C++程式碼的版本控制?引言:隨著軟體開發的不斷發展,程式碼的版本管理變得至關重要。版本控制是一種管理和追蹤程式碼變化的機制,旨在提高程式碼開發和維護的效率。對於C++開發人員來說,版本控制是不可或缺的工具,本文將介紹如何進行C++程式碼的版本控制,以幫助開發人員更好地管理和追蹤程式碼變化。一、選擇適當的版本控制系統在開始進行C++程式碼的版本控制前,首先需要選
