手记

快速可靠的包管理工具 Yarn

Yarn 发布于2016年10月,是 Facebook、Google、Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。它相比与 npm 更佳的高效、安全和可靠。在 Github 上迅速拥有了 30.7k 个 Star,而 npm 只有 15.8k 个 Star。

Yarn 的优势

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

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

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

如何安装(macOS)

我们通过 Homebrew 来安装 Yarn,如果没有安装 Node 它也可以安装:

brew install yarn
yarn --version

升级 Yarn

brew upgrade yarn

如何使用

初始化新项目

yarn init

添加依赖包

yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]

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

升级依赖包

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

移除依赖包

yarn remove [package]

安装项目的全部依赖

yarn
或者
yarn install

Yarn 的工作流

  • 创建一个新项目:Yarn 也是用 package.json 文件来管理项目的依赖的

  • 增加/更新/删除依赖

  • 安装/重装你的依赖

  • 引入版本控制系统

    • package.json:包含包的所有依赖信息;

    • yarn.lock:记录每一个依赖项的确切版本信息;

  • 持续集成

yarn.lock

  • 为了跨设备安装得到一致的结果,Yarn 需要比 package.json 中更多的依赖信息,Yarn 使用 yarn.lock 文件来保存每一个安装的依赖版本;

  • yarn.lock 文件是自动生成的,而且应该完全被 Yarn 管理。当你在对项目进行 增加/更新/删除 等依赖操作时,它会自动的更新 yarn.lock 文件;

  • 所有的 yarn.lock 文件都应该被提交到版本控制系统中去,这样才会让所有的设备保持同样的依赖。

如何从 npm 迁移到 Yarn

大家不要担心迁移,从 npm 迁移到 Yarn 是一件非常简单的事情,Yarn 和 npm 使用同样的 package.json 文件,现在只需要运行 yarn Yarn 将通过自己的解析算法来重新组织 node_modules 目录,这个算法和 node.js 模块解析算法是兼容的。





0人推荐
随时随地看视频
慕课网APP