Yarn 基本上就是一個類似 NPM 的東西,針對 package 做管理,可接受 NPM 的 package.json 格式無縫接軌,你只要安裝完 yarn 後,把原本的 npm install 換成 yarn install 指令就可以,安裝的速度提升非常驚人。
它到底做了什麼呢?官網上目前介紹文很少,反而看 github readme 可以得到比較多資訊。
特色
- 快速:相同的 package 只會安裝一次,用使用平行化技術提升安裝速度。
- 可靠:使用 確定性演算法 deterministic algorithm 來安裝
- 安全:有 checksum 檢查機制
功能
- 離線模式
- 使用 deterministic algorithm
- Network Performance. Yarn efficiently queues up requests and avoids request waterfalls in order to maximize network utilization.
- 如果單一 request 失敗有重連機制
- 扁平化(Flat) 模式:解決混亂的版本相依問題,並避免重複建立。
- 更多的 emojis 支援
Mac 安裝 Yarn
1 | brew update |
設定環境變數
vi ~/.profile
或
vi ~/.bashrc
或
vi ~/.zshrc
1 | export PATH="$PATH:$HOME/.yarn/bin" |
常用指令對照表
說明 | NPM | Yarn |
---|---|---|
初始化 | npm init | yarn int |
全部模組安裝 | npm install | yarn install |
安裝相依模組 | npm install -S [package] | yarn add [package] |
安裝開發相依模組 | npm install -D [package] | yarn add [package] –dev |
安裝全域相依模組 | npm install -g [package] | yarn global install [package] |
移除相依模組 | npm uninstall -S [package] | yarn remove [package] |
移除開發相依模組 | npm uninstall -D [package] | yarn remove [package] |
重新安裝模組 | rm -rf node_modules && npm install | yarn upgrade |
參照