yarn 安裝使用小記

lindong發表於2018-05-04

什麼是yarn

一種取代npm的 Node的模組管理器,從使用上來看,從npm過度到yarn幾乎零成本,除了操作上相近,yarn 同樣是一個從 npm 註冊源獲取模組的工具。 為什麼要使用yarn來代替npm呢?從官網的介紹(FAST, RELIABLE, AND SECURE DEPENDENCY MANAGEMENT)可以看出來他比npm更加快速、安全,但我選擇yarn一個重要的原因是:yarn有一個 yarn.lock 檔案,每次模組被新增時,yarn 就會建立(或更新)yarn.lock 檔案,這個檔案保證了保證了不同機器下載的包的版本都一樣,而npm會根據package.json定義的版本號範圍下載包,導致不同機器或者不同時間下載的包的版本不一樣。 注意!npm 5.0.x 版本已經會在執行npm i的時候生成package-lock.json的檔案,作用就像上面說的一樣,“鎖”住版本。(但npm新版本還不太穩定,可以等一段時間再使用)

接下來進入正題,Mac安裝yarn

yarn 官網 介紹是通過 Homebrew 安裝

brew install yarn
複製程式碼

但是安裝下來的版本為0.16.1,版本太低,需要升級,重點是我通過 brew upgrade yarn 也無法將yarn的版本升級到最新版本。折騰了幾遍之後也無法解決,想著用到伺服器也不需要Homebrew,那就改用其它安裝方式吧。下面是解決方式(不管是安裝或者更新):

  1. 手動移除本地二進位制 yarn檔案:
rm -f /usr/local/bin/yarnpkg
rm -f /usr/local/bin/yarn
複製程式碼
  1. 移除快取:
rm -rf ${HOME}/.yarn
複製程式碼
  1. 如果之前存在環境變數,在.zshrc.bash_profile有下面配置,移除它:
export PATH="$PATH:`yarn global bin`"
複製程式碼
  1. 通過 curl 安裝 yarn :
curl -o- -L https://yarnpkg.com/install.sh | bash
複製程式碼

這裡檢視一下我電腦裡的版本:

$ yarn -v
1.3.2
複製程式碼

顯示是1.3.2版本,那麼現在讓我們執行上面指令碼的下載並安裝:

26D725C412B3450B9150E4FE11248D6D.png

成功安裝最新版本(1.6.0)

  1. 看環境變數是否已修改,檢視 .zshrc 或者 .bash_profile,如果沒有請新增下面一行:
export PATH="$PATH:$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin"
複製程式碼

執行 yarn -v 檢視是否正常。正常的話就可以開始使用 yarn: 使用 create-react-app 一個 TypeScript 專案

$ yarn create react-app antd-demo-ts --scripts-version=react-scripts-ts
....
$ cd antd-demo-ts
$ yarn start
複製程式碼

curl

curl命令是一個利用URL規則在命令列下工作的檔案傳輸工具。它支援檔案的上傳和下載,所以是綜合傳輸工具,但按傳統,習慣稱curl為下載工具。作為一款強力工具,curl支援包括HTTP、HTTPS、ftp等眾多協議,還支援POST、cookies、認證、從指定偏移處下載部分檔案、使用者代理字串、限速、檔案大小、進度條等特徵。

wget區別:wget是個專職的下載利器,可以遞迴,支援斷點;而curl多用來除錯網頁,提交web資料,可以post/get請求,可以自定義傳送頭

  • -o filename url 引數是儲存網頁內容到檔案中
  • -L 進行重定向

相關文章