yarn的安装及使用教程

CSDN成就一亿技术人



一、官网指引

英文官网:Yarn英文官网
中文文档:Yarn中文文档

二、Yarn 介绍

  Yarn 是一款 JavaScript 的包管理工具(npm 的代替方案),是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。在 Yarn 的官网有着一句话:Safe, stable, reproducible projects 。
  正如 Yarn 官网的介绍,Yarn 的具有速度快 、安全 、可靠 的优点,在功能上相比于 npm 优化了许多功能等,例如网络性能优化,安装依赖的方式相同等功能。
  你可以通过它使用全世界开发者的代码,或者分享自己的代码。代码通过包(package)(或者称为模块(module))的方式来共享。 一个包里包含所有需要共享的代码,以及描述包信息的文件,称为package.json。它的优点是更快、更安全、更可靠。它的主要特性有离线模式、确定性、网络性能、多注册、网络恢复能力、扁平模式以及 Emoji。

三、Yarn 的优点

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

四、window 系统安装 Yarn

方式一、下载node.js,使用npm安装

npm install -g yarn

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

配置环境变量
  • 复制bin地址:

在这里插入图片描述

  • 添加yarn的环境变量到系统变量中
    在这里插入图片描述

在这里插入图片描述

修改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

方式二、通过Chocolatey安装

Chocolatey 是一个 Windows 专用的软件包管理工具。 请按照此 说明 安装 Chocolatey。安装 Chocolatey 之后,你就可以在控制台执行如下命令安装 Yarn。

choco install yarn

方式三、通过 Scoop 安装

Scoop 是一个用于 Windows 的基于命令行的安装工具。 请按照此 说明 安装 Scoop 。Scoop 安装后,你就可以在控制台执行如下命令安装 Yarn 。

scoop install yarn

五、Linux系统安装 Yarn

方式一 官网脚本执行一键安装

curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --nightly

方式二 通过npm安装

npm install -g yarn

六、Yarn 常用命令

查看版本: yarn --version
创建文件夹 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] //设置配置项
添加依赖包:
  • (会更新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
将依赖项添加到不同依赖项类别:

不指定依赖类型默认安装到dependencies里,你也可以指定依赖类型分别添加到 devDependencies、peerDependencies 和 optionalDependencies

yarn add [package] --dev 或 yarn add [package] -D // 加到 devDependencies
yarn add [package] --peer 或 yarn add [package] -P // 加到 peerDependencies
yarn add [package] --optional 或 yarn add [package] -O // 加到 optionalDependencies
升级依赖包:
yarn upgrade [package] // 升级到最新版本
yarn upgrade [package]@[version] // 升级到指定版本
yarn upgrade [package]@[tag] // 升级到指定tag
安装依赖包:
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
发布依赖包:
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 info [package] // 可以用来查看某个模块的最新版本信息
缓存:
yarn cache
yarn cache list // 列出已缓存的每个包
yarn cache dir // 返回全局缓存位置
yarn cache clean // 清除缓存

七、yarn 和 npm 命令对比

NPMYarn说明
npm inityarn init初始化某个项目
npm install/linkyarn install/link默认安装依赖
npm install taco –saveyarn add taco安装某个依赖并默认保存到package
npm uninstall taco –saveyarn remove taco移除某个依赖
npm install taco –save -devyarn add taco -dev安装某个开发时的依赖
npm update taco –saveyarn upgrade taco更新某个依赖项目
npm install taco –globalyarn global add taco安装某个全局依赖项目
npm publish/login/logoutyarn publish/login/logout发布/登录/退出
npm run/testyarn run/test运行某个命令

八、总结

在包管理工具的选择上,Yarn和npm各有其特点和优势。以下是两者的比较分析:

  1. 安装速度:Yarn使用了并行化的策略来处理依赖项的安装,这意味着它会同时处理多个任务,从而提高了性能。而npm在早期版本中是按队列顺序一个接一个地安装依赖项,这可能会导致安装过程比Yarn慢。
  2. 锁定文件:Yarn默认会生成一个yarn.lock文件,记录了所有依赖的确切版本号,确保团队成员之间安装的依赖一致性。而npm需要运行shrinkwrap命令来生成npm-shrinkwrap.json文件,才能达到类似的效果。
  3. 依赖管理:Yarn和npm都使用加密哈希算法来确保包的完整性,这是两者共有的特性。不过,Yarn在处理依赖关系时更加积极,它会尽可能地减少文件的大小和数量。
  4. 使用技巧:Yarn支持一些便利的命令,如使用yarn config set registry命令可以改变npm的镜像源,这对于国内用户来说是一个实用的功能。而npm也提供了丰富的命令集合,但在某些操作上可能需要更多的配置。

总的来说,Yarn在性能和依赖管理方面有一定的优势,尤其是在提高安装速度和简化依赖锁定方面。而npm作为Node.js官方支持的包管理工具,拥有庞大的生态系统和广泛的用户基础,也在不断改进和更新,以提供更好的用户体验。


创作不易,恳请点赞。
如有不足,恳请指正,欢迎在评论区留言。
CSDN成就一亿技术人
  • 30
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灯把黑夜烧了一个洞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值