官网:https://yarnpkg.com/zh-Hans/docs/installing-dependenciesnode
简介:包管理工具,和npm相似
主要特色:快速、安全、可靠
快速:本地安装包后,会进行缓存,下次再安装时,直接从缓存中取,不须要再请求网络
安全:经过相关机制,在安装以前,会检查包的完整性,保证包的完整性
可靠:经过维护yarn.lock文件,记录包及依赖的确切版本信息,保证同一项目在不一样操做系统上获得的包的版本是一致的react
安装:能够直接经过npm安装
npm install yarn -g
查看:
查看版本:yarn -v
查看命令:yarn -h
查看参数:yarn help COMMANDlinux
初始化一个工程及安装包:
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 文件,里面包含包的信息webpack
其它命令:
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 git
{ "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目录web