文章目录
- 一、 yarn
- 二、从npm 迁移到 yarn
一、 yarn
Yarn 对你的代码来说是一个包管理器。它可以让你使用并分享 全世界开发者的(例如 JavaScript)代码。 Yarn 能够快速、安全、 并可靠地完成这些工作。代码通过 包(package) (或者称为 模块(module)) 的方式来共享。 一个包里包含所有需要共享的代码,以及描述包信息的文件,称为
package.json
。
1、yarn中文官网 2、
- yarn利用npm的安装方式:
npm install -g yarn
- 检测yarn是否安装成功:
yarn --version
3、 使用方法:
- 初始化一个新项目:
yarn init
- 添加依赖包:
yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]
- 将依赖项添加到不同依赖项类别中 , 分别添加到
devDependencies
、peerDependencies
和optionalDependencies
类别中:
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 install
二、从npm 迁移到 yarn
官网:从 npm 迁移到 yarn:
强烈建议收藏本文,英文文档直译,可直接翻阅本文
1、对于大多数用户来说从npm迁移到yarn是个简单的过程。yarn 可以使用和npm相同格式的 package.json,并且可以从你npm注册表中安装任何依赖包 。
2、如果你想在现有的npm项目上运行yarn,试着运行:yarn
(将项目初始化)
- 你的node_modules文件夹将会兼容yarn的分辨率算法和node.js模块的分辨率算法。
3、 如果你的项目出错,请查看现有的issue,或者将问题提交到issue tracker。
4、 当你运行yarn 或者yarn add [package]时,yarn会在你安装包的根目录下生成一个yarn.lock文件。你需要阅读或者去理解这个文件,只需要检查它是否已经在源代码管理里面。当其他人使用yarn代替npm时,yarn.lock文件会确保他们能精确获取和你相同的依赖。
5、 在大多数情况下,第一次运行yarn 或者 yarn add命令才会起作用。相同的情况下,package.json文件中的信息并不明确,无法消除依赖关系,而唯一明确的方式是yarn选择的依赖会运行到依赖冲突中去。
- 特别在大型项目中,有时候npm安装不起作用,并且开发人员频繁移除node_modules和从头开始重建。如果发生这种情况,尝试使用npm让依赖的版本更明确,然后再换成yarn。
6、 Yarn从版本1.7.0起,你可以通过使用yarn import,将npm生成的package-lock.json的状态导入到Yarn。
- 项目中的其他开发人员可以继续使用npm,所以你不需要让项目中的每个人去同时转换成使用yarn。使用yarn的开发人员将会获取到完全相同的配置,使用npm的开发人员可能会获取到在npm预期下稍微不同的配置。
- 当你觉得yarn并不合适的时候,你可以重新使用npm并且不需要做其他特殊的改变。如果项目中没有人使用yarn的时候,你可以选择是否删除你旧的yarn.lock文件,都不影响使用。
7、当你正在使用 npm-shrinkwrap.json文件时,请意识到你看你会得到不要的依赖集。yarn不会提供npm的shrinkwrap文件,因为他们没有租后的信息去支持yarn的更多确定性算法。如果你使用的是shrinkwrap文件,则可以更容易地去转换项目中每个人同时使用yarn,只需要移除你现有的npm-shrinkwrap.json 文件并且检查新创建的yarn.lock文件