yarn是facebook发布的一款取代npm的包管理工具。

yarn的特点:

  • 速度超快。
  • Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快。
  • 超级安全。
    在执行代码之前,Yarn 会通过算法校验每个安装包的完整性。
  • 超级可靠。
    使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异的工作。

yarn安装:

macos下安装
        brew install yarn

下载node.js,使用npm安装
        npm install -g yarn
        yarn --version

Yarn 淘宝源安装,分别复制粘贴以下代码行到黑窗口运行即可
        yarn config set registry https://registry.npm.taobao.org -g
        yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g

yarn常用命令:

安装yarn
        npm install -g yarn

安装成功后,查看版本号:
        yarn --version

全局安装包
        yarn golbal add <package>

创建文件项目

创建文件夹 yarn
        md yarn
    进入yarn文件夹
        cd yarn
    初始化项目
        yarn init // 同npm init,执行输入信息后,会生成package.json文件

yarn的配置项:
        yarn config list// 显示所有配置项
        yarn config get <key>//显示某配置项
        yarn config delete <key> //删除某配置项
        yarn config set <key> <value> [-g|--global] //设置配置项
        yarn global list //获取yarn安装包列表

安装包:
        yarn install //安装package.json里所有包,并将包及它的所有依赖项保存进yarn.lock
        yarn install --flat //安装一个包的单一版本
        yarn install --force //强制重新下载所有包
        yarn install --production //只安装dependencies里的包
        yarn install --no-lockfile//不读取或生成yarn.lock
        yarn install --pure-lockfile //不生成yarn.lock

添加包(会更新package.json和yarn.lock):

yarn add [package]// 在当前的项目中添加一个依赖包,会自动更新到package.json和yarn.lock文件中
        yarn add [package]@[version] // 安装指定版本,这里指的是主要版本,如果需要精确到小版本,使用-E参数
        yarn add [package]@[tag] // 安装某个tag(比如beta,next或者latest)

//不指定依赖类型默认安装到dependencies里,你也可以指定依赖类型:
        yarn add --dev/-D// 加到 devDependencies
        yarn add --peer/-P // 加到 peerDependencies
        yarn add --optional/-O // 加到 optionalDependencies

//默认安装包的主要版本里的最新版本,下面两个命令可以指定版本:
        yarn add --exact/-E// 安装包的精确版本。例如yarn add foo@1.2.3会接受1.9.1版,但是yarn add foo@1.2.3 --exact只会接受1.2.3版
        yarn add --tilde/-T// 安装包的次要版本里的最新版。例如yarn add foo@1.2.3 --tilde会接受1.2.9,但不接受1.3.0

发布包
        yarn publish
    移除一个包
        yarn remove <packageName>:移除一个包,会自动更新package.json和yarn.lock

更新一个依赖
        yarn upgrade用于更新包到基于规范范围的最新版本

运行脚本
        yarn run 用来执行在 package.json 中 scripts 属性下定义的脚本

显示某个包的信息
        yarn info <packageName> 可以用来查看某个模块的最新版本信息

缓存
        yarn cache
        yarn cache list # 列出已缓存的每个包
        yarn cache dir # 返回 全局缓存位置
        yarn cache clean # 清除缓存

yarn和npm比较

yarn使用 以及和npm对比的更多相关文章

  1. 观点纠正,yarn和npm对比,今天yarn仍然比npm快吗

    yarn和npm的区别和对比,网上很多了,不多说了. 只纠正一个观点:yarn仍然比npm快吗?不. 2016年,yarn刚刚发布,速度确实比npm快,于是网络上出现了好多推荐yarn的文章. 于是很 ...

  2. yarn的学习-2-从 npm 迁移到 yarn-包管理工具

    从npm处迁移过来多许多用户来说是一个相对简单的过程.yarn能想npm一样定制相同的package.json,并能够从npm仓库下载任意的包 如果你想要在已存在的npm项目中使用yarn,运行yar ...

  3. vue-create 报错 command failed: yarn --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao.org/dist 完美解决方案

    @vue/cli 3.x 创建项目失败解决方案 报错信息 command failed: yarn --registry=https://registry.npm.taobao.org --distu ...

  4. yarn 不要一起用 npm

    yarn 不要一起用 npm 如果一起用,看下lock 的版本一样不,不一样可能会出现问题

  5. yarn与npm对比

    https://www.jianshu.com/p/254794d5e741(copy)

  6. 安装yarn 心得分享

    初次使用yarn ,坑的我,全局安装完@vue/cli,安装之后就是说vue不是内部命令,研究好久,总结一下分享大家一起学习 1,首先安装yarn: 安装yarn 去官网下载yarn 安装包 默认安装 ...

  7. npm与yarn命令对比

    Yarn是由Facebook.Google.Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具 Yarn 是为了弥补 npm 的一些缺陷而出现的(比如,npm install时候会 ...

  8. yarn和npm的对比以及yarn的使用

    0--前言 为什么要使用yarn,如果你从事前端开发有些年头了,那你肯定对npm又爱又恨,爱就不说了,恨嘛,就是NPM经常奇慢和卡顿,这还能忍,经常各种错误就没法忍了,尤其是他人创建的项目,自己在安装 ...

  9. [yarn]yarn和npm的对比

    一.简介 NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服 ...

  10. node的包管理工具:yarn和npm

    arn是Facebook发布的一款依赖管理工具,它比npm更快.更高效. NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题. 一.yarn官方网站: 英文官网:ht ...

随机推荐

  1. nrf9160开机测试(做主控)——连接nrfcloud云

    由于作者水平有限,如有披漏欢迎指正. 测试流程: 1.前期开发准备(硬件) 2.开发环境准备(软件) 3.连接云 4.GPS测试 一.前期开发准备: nrf9160-DK版 nRF Connect f ...

  2. 八、指定节点pod运行在固定节点

    指定pod运行在固定节点 一.指定固定节点:Pod.spec.nodeName Pod.spec.nodeName 将 Pod 直接调度到指定的 Node 节点上,会跳过 Scheduler 的调度策 ...

  3. fake_useragent—Error occurred during loading data报错问题

    问题如下 解决方法: 在自己的临时文件下新建一个fake_useragent_0.1.11.json 把下面的文字复制进去 临时文件 直接输入cmd %temp% 即可进去 { "rando ...

  4. php注解使用示例

    今天看到php注解的介绍文章很感兴趣,动手实际试了试挺好玩,写这篇文章记录下 php从8开始支持原生注解功能了,我们可以写个小的例子看看注解怎么玩.   先确定我们的任务目标 1.编写一个注解类rou ...

  5. Unreal NetMode&NetRole 解析

    Version: Unreal 4.26 问题 为啥UE编辑器会有EPlayNetMode有三种让你选择. 为啥描述World 的ENetMode 会有4种,而不只是(Client/Server 2种 ...

  6. EasyPoi 导出Excel(ExcelExportEntity生成表头)

    [引入依赖] <!--easypoi--> <dependency> <groupId>cn.afterturn</groupId> <artif ...

  7. 2022春每日一题:Day 14

    题目:字符串归类 发现字符串长度总数不大,因此把每个字符串有的字母分离,存放到桶中,再枚举合并即可,时间复杂度O(len) 赛时代码: #include <cstdio> #include ...

  8. Go实现常用软件设计模式二:工厂模式

    目录: 举个栗子 概念介绍 使用场景 1.举个栗子 类图 ``` @startuml'https://plantuml.com/class-diagramclass Elephant { String ...

  9. 解决 linux mint 安装显卡驱动失败解决

    前言 安装显卡驱动的基本流程就是,禁用 nouveau驱动,然后安装 nnvidia驱动,然后重启电脑.但是我重新启动, 使用NVIDIA X Server Settings查看一直显示空白,毫无疑问 ...

  10. 关于CSDN获取博客内容接口的x-ca-signature签名算法研究

    前言 源码下载 不知道怎么就不通过了,这篇文章放出去几个月了,然后突然告诉我不行了,所以我打算换个平台(至少不能在一棵树吊死),垃圾审核 我最初想直接获取html博客,然后保存在本地,最后发布到别的博 ...