【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]
  • 将依赖项添加到不同依赖项类别中 , 分别添加到 devDependenciespeerDependenciesoptionalDependencies类别中:

    • 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文件

参考博文链接: https://blog.csdn.net/u011684839/article/details/81664236

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值