yarn 學習 小記
官網:https://yarnpkg.com/zh-Hans/docs/installing-dependencies
簡介:包管理工具,和npm類似
主要特點:快速、安全、可靠
快速:本地安裝包後,會進行緩存,下次再安裝時,直接從緩存中取,不需要再請求網絡
安全:通過相關機制,在安裝之前,會檢查包的完整性,保證包的完整性
可靠:通過維護yarn.lock文件,記錄包及依賴的確切版本信息,保證同一項目在不同操作系統上得到的包的版本是一致的
安裝:可以直接通過npm安裝
npm install yarn -g
查看:
查看版本:yarn -v
查看命令:yarn -h
查看參數:yarn help COMMAND
初始化一個工程及安裝包:
yarn init
隨後和npm一樣,需要回答一些相關信息,init之後,會生成一個package.json 文件
ls //查看
安裝(添加)包:和npm不一樣哦
yarn add webpack
安裝完成後,安裝提示信息更人性化,顏色、icon特別提示
此時項目下,會自動生成node_moduls目錄,及yarn.lock文件
更新包:和npm也不一樣呢
yarn upgrade webpack
測試離線安裝,比如安裝webpack的一個依賴tty-browserify,添加參數--offline
yarn add tty-browserify --offline
查看本地緩存的所有模塊:
yarn cache ls
移除包:
yarn remove webpack
安裝項目的全部依賴:
yarn 或 yarn install
版本控制(比如git):
必須包含package.josn 和 yarn.lock 文件,裏面包含包的信息
其它命令:
cache相關(離線安裝包時比較有用):
yarn cache dir: 返回緩存包在本地的路徑
yarn cache clean: 清除本地緩存,執行後,再yarn cache ls將不會再有包信息
config相關:
yarn config list: 列出yarn、npm的相關信息
yarn config set: 設置yarn相關信息
比如:設置淘寶鏡像
yarn config set registry registry.npm.taobao.arg
yarn config list
info
yarn info [package]: 可以查看包的相關信息(包括已安裝、未安裝)
比如:yarn info react: 將會列出react的相關信息
global:
yarn global add webpack: 全局安裝,等同於npm的npm install -g webpack
不推崇全局,因為不會在package.json中記錄包信息,會導致不同系統信息不一致而出錯
why:
yarn why [package]: 可以查看包為什麽會安裝該依賴
比如:安裝了webpack,通過yarn cache ls查看緩存包,可以找到uglify-js
yarn why uglify-js: 可以看到為什麽會安裝該包的分析
run:
yarn run [cli]: 可以執行項目下package.json中設置的命令
比如:在項目的package.json中添加script屬性,編寫linux命令:
package.json
{ "name": "yarn-project", "version": "1.0.0", "main": "index.js", "license": "MIT", "dependencies": { "tty-browserify": "^0.0.0", "webpack": "^2.5.1" }, "scripts": { "create-dir": "mkdir demo", "rm-dir": "rm -rf demo" } }
之後,在命令行中執行:
yarn run create-dir //會創建demo目錄
ls
yarn run rm-dir //會刪掉demo目錄
yarn 學習 小記