yarn-新生代NPM

yarnnode

僅僅一晚上,卻也是無數個日夜,FaceBook 開源了 yarn 這個新的 JavaScript 包管理工具,
這個和 Exponent, Google, 以及 Tilde 合做完成的項目。
官網 | Github Repo
yarn出現的原因 — 解決npm歷史遺留的痛點
亮點jquery

極致的快速—會緩存已經下載過的包,避免重複下載~~~這特性比npm好多了,不用每次都請求下載
離線模式 — 以前下載過的包,能夠離線再次安裝
安全 — 下載前會檢查簽名及包的完整性
可靠可肯定性
保證各平臺依賴的一致性
網絡優化 — 力求網絡資源最大利用化,讓資源下載完美隊列執行,避免大量的無用請求,下載失敗會自動從新請求,避免整個安裝過程失敗
扁平化模式 — 對於不匹配的依賴版本的包創立一個獨立的包,避免建立重複的。
下載安裝 — 支持多平臺git

由於他們的下載包基本都是放在Amazon上的,版本什麼也會隨時更新,我就不給出單獨版本的下載連接了;
能夠自行到下載頁面下載,此處只是給出教程 —— 下載傳送門npm

注意:命令行模式基本三平臺同樣json

window — 一直下一步下一步,如今安裝目錄什麼的,而後打開cmd輸入yarn --version就能看到版本號。。如圖緩存

提供的.msi後綴格式的安裝包,前提須要依賴nodejs(也就是說須要先安裝nodejs)
這裏寫圖片描述
Linux — 提供了debian家族的apt-get包管理器安裝的還有rhel家族的yum管理器安裝的安全

這裏就不點綴了,也是在終端執行,,很是簡單。。。
MacOS – 有兩種安裝模式,一種是下載腳本執行,一種下載壓縮包解壓。。。後者跟Linux下載編譯包一個道理,這裏還不須要編碼,解壓便可使用
在終端執行curl -o- -L https://yarnpkg.com/install.sh | bash ,下載腳本而且執行
一樣在終端執行bash

cd /opt      #註釋請忽略,這個是切換到目錄
    wget https://yarnpkg.com/latest.tar.gz  #用wget下載tar.gz包
    tar zvxf yarn-*.tar.gz   #解壓包
    # Yarn is now in /opt/yarn-[version]/

小科普: MacOS有BSD的血統,Linux類UNIX,二者都是類UNIX。。。因此會Linux的小夥伴搞MacOS感受都差很少,都能速度上手,大同小異滴網絡

使用教程curl

跟npm的用法很是相似,且待我細細到來~

三步走

項目下初始化 - 切到你的項目下,執行yarn init,會在根目錄下生成一個package.json
添加依賴安裝
開工
命令解釋

yarn init #初始化package.json – 和npm一致 
這裏寫圖片描述 
name : 項目名
version : 版本號
description : 項目描述
entry point : 入口文件
git repository: git項目連接地址
author : 做者
license : 協議
{
  "name": "yarn-demo",
  "version": "1.0.0",
  "description": "This is yarn-demo.",
  "main": "index.js",
  "repository": {
    "url": "....",
    "type": "git"
  },
  "author": "LinQunHe(CRPER)",
  "license": "MIT",
  "dependencies": {
    "jquery": "2.1.4"
  }
}

添加依賴

yarn add [package] — 添加包,會自動安裝最新版本,注意會覆蓋指定版本號!!!
這裏寫圖片描述

yarn add [package]@[version] — 帶版本號安裝
這裏寫圖片描述

yarn add [package]@[tag] — tag,是指代git上的推送的tag【no release!!】,看圖
這裏寫圖片描述

更新依賴

tips: 估計管理器還有些不完善,不能單獨升級某個依賴。會提示error This command doesn’t require any arguments. — 意思就是該命令不須要任何參數【不帶參數】

yarn upgrade [package] — 更新某個包
yarn upgrade [package]@[version] — 指定更新到某個版本
yarn upgrade [package]@[tag] — 指定更新版本到某個標籤

以上不能使用, 惟一能用的是在項目下執行,yarn upgarde, 會遍歷全部依賴,而後所有更新

這裏寫圖片描述

移除依賴

yarn remove [package] — 移除某個包
這裏寫圖片描述
在其餘項目啓動項目

相似npm,執行npm install;

yarn管理器支持兩種安裝全部依賴的命令:yarn 或者 yarn install

固然,還有一些其餘不經常使用的命令,好比發佈什麼的,,具體能夠看這裏 —- 傳送門

總結

yarn管理器有一個很重要的文件須要注意,就是yarn.lock,這個是用來依賴的正確性,快速可靠安裝的;是執行cli的時候自動生成的,在項目的根目錄下,須要保留!!!!不要編輯它,這是自動生成的

在其餘電腦初始化,必須記得把package.json和yarn.lock複製過去,簡直就是秒下載【緩存機制】,如圖;

這裏寫圖片描述

聽說npm的開發者也參與了yarn的開發。。。這貨之後有取代npm的傾向。。。

相關文章
相關標籤/搜索