使用yarn的原因:

1.速度超快

Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快。

2.超级安全

在执行代码之前,Yarn 会通过算法校验每个安装包的完整性。

3.超级可靠

使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异的工作。

 

特点:

1.离线模式

如果你以前安装过某个包,再次安装时可以在没有任何互联网连接的情况下进行。

2.确定性

不管安装顺序如何,相同的依赖关系将在每台机器上以相同的方式安装。

3.网络性能

Yarn 有效地对请求进行排队处理,避免发起的请求如瀑布般倾泻,以便最大限度地利用网络资源。

4.相同的软件包

从 npm 安装软件包并保持相同的包管理流程。

5.网络弹性

重试机制确保单个请求失败并不会导致整个安装失败。

6.扁平模式

将依赖包的不同版本归结为单个版本,以避免创建多个副本。

 

开始学习

Yarn 对你的代码来说是一个包管理器, 你可以通过它使用全世界开发者的代码, 或者分享自己的代码。Yarn 做这些快捷、安全、可靠,所以你不用担心什么。

通过Yarn你可以使用其他开发者针对不同问题的解决方案,使自己的开发过程更简单。 使用过程中遇到问题,你可以将其上报或者贡献解决方案。一旦问题被修复, Yarn会更新保持同步。

代码通过 包(package) 模块(module)) 的方式来共享。

 package.json 。

 

安装:

最开始的yarn公告是这么介绍yarn的安装的:
*最简单的入门方法是运行:



npm install -g yarn
yarn*



现在的yarn安装页面是这么说的:
注意:通常情况下不建议通过npm进行安装。npm安装是非确定性的,程序包没有签名,并且npm除了做了基本的SHA1哈希之外不执行任何完整性检查,这给安装系统程序带来了安全风险。
基于这些原因,强烈建议你通过最适合于你的操作系统的安装方法来安装yarn。

因为我之前安装过Homebrew,所以安装方式为:


brew install yarn

还有更多的安装方式看:https://yarn.bootcss.com/docs/install/#mac-stable

 



升级 Yarn

有新版时,Yarn 会给你提示。 如需升级 Yarn ,仍然可以通过 Homebrew 来升级。


brew upgrade yarn


 

测试:

通过如下命令测试 Yarn 是否安装成功:



yarn --version



 我下载的版本是1.12.3

 

使用:

现在 Yarn 已经 安装完毕,可以开始使用了。 以下是一些你需要的最常用的命令:

初始化一个新项目,生成package.json文档



yarn init
//等价于npm的npm init



添加依赖包



yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]
//等价于npm的
//npm install [package]
//npm install [package]@[version]
//npm install [package]@[tag]



 



将依赖项添加到不同依赖项类别中

分别添加到 devDependenciespeerDependencies optionalDependencies类别中:



yarn add [package] --dev
yarn add [package] --peer
yarn add [package] --optional



yarn add [package]则是添加到dependencies类中

 



升级依赖包



yarn upgrade [package]
yarn upgrade [package]@[version]
yarn upgrade [package]@[tag]



 



移除依赖包



yarn remove [package]
//等价于npm uninstall [package]



 



安装项目的全部依赖,安装package.json中的包



yarn
或者
yarn install
//等价于npm install



 

 

 

Yarn 工作流

将包管理器引入到项目中会引入一个围绕依赖关系的新工作流。

Yarn 尽最大努力不让你感知它的存在,并让工作流中的每一步都易于理解。

关于基本工作流程,您应该了解以下几点:

  1. 创建一个新项目
  2. 添加/更新/删除依赖项
  3. 安装/重新安装依赖项
  4. 使用版本管理工具(例如 git)
  5. 持续集成

1.创建一个新项目


即使用yarn init,生成package.json

2.添加/更新/删除依赖项

即调用yarn add/update/remove [package]

用以下载包并会自动改变package.json和yarn.lock中的包内容

3.安装/重新安装依赖项

即调用yarn install

它用以安装项目的依赖。这些依赖能够通过检索项目的package.json文档获得并存储在yarn.lock文件中

Installing Options 

There are many options for installing dependencies, including:

  1. Installing all dependencies: yarn yarn install,安装所有包
  2. Installing one and only one version of a package: yarn install --flat,安装一个且只有一个版本的包
  3. Forcing a re-download of all packages: yarn install --force,强迫性地重新安装所有包
  4. Installing only production dependencies: yarn install --production,只安装有生产的依赖关系的包

4.与版本管理工具(例如 git)协同工作

Required Files 

The following files must be checked into source control for anyone to be able to manage your package:

  • package.json: This has all the current dependencies for your package.包含目前所有包的依赖
  • yarn.lock: This stores the exact versions of each dependency for your package.存储了包的依赖的确切版本
  • The actual source code that provides the functionality for your package.以及提供包功能的实际源代码

5.持续集成

自己看https://yarn.bootcss.com/docs/install-ci/