前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Yarn 常用命令详解

Yarn 常用命令详解

作者头像
子晋
发布2022-01-18 21:22:15
9.7K0
发布2022-01-18 21:22:15
举报
文章被收录于专栏:子晋城子晋城

Yarn 简介

Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。就像我们可以从官方文档了解那样,它的目的是解决这些团队使用 npm 面临的少数问题。

Yarn 官网:https://classic.yarnpkg.com/zh-Hans

安装

官网脚本:

代码语言:javascript
复制
curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --nightly

或者

代码语言:javascript
复制
npm install -g yarn

安装成功后,即可查看版本:

代码语言:javascript
复制
yarn –version

常用命令

初始化新项目

代码语言:javascript
复制
yarn init

npm 方式:

代码语言:javascript
复制
npm init

yarn init 与 npm init 一样通过交互式会话创建一个 package.json 文件。

添加依赖包

通过 yarn add 添加依赖会更新 package.json 以及 yarn.lock 文件。

代码语言:javascript
复制
yarn add [package]yarn add [package]@[version]yarn add [package]@[tag]

npm 方式:

代码语言:javascript
复制
npm install [package]

将依赖项分别添加到不同依赖项,例如分别添加到 devDependencies、peerDependencies 和 optionalDependencies:

代码语言:javascript
复制
yarn add [package] --devyarn add [package] --peeryarn add [package] --optional

升级依赖包

代码语言:javascript
复制
yarn upgrade [package]yarn upgrade [package]@[version]yarn upgrade [package]@[tag]

npm 方式:

代码语言:javascript
复制
npm update [package]

移除依赖包

代码语言:javascript
复制
yarn remove [package]

npm 方式:

代码语言:javascript
复制
npm uninstall [package]

安装项目的全部依赖

代码语言:javascript
复制
yarn

或者

代码语言:javascript
复制
yarn installyarn install --force # 强制下载安装

npm 方式:

代码语言:javascript
复制
npm installnpm install --force # 强制下载安装

运行脚本

代码语言:javascript
复制
yarn run [script] [<args>]

yarn run 用来执行 package.json 中 scripts 属性下定义的脚本,例如:

代码语言:javascript
复制
{  "name": "my-package",  "scripts": {    "dev": "node app.js",    "start": "node app.js"  }}

执行 scripts 属性下 dev 对应的脚本 node app.js

代码语言:javascript
复制
yarn run dev

npm 方式:

代码语言:javascript
复制
npm run dev

执行 scripts 属性下 start 对应的脚本 node app.js

代码语言:javascript
复制
yarn start

npm 方式:

代码语言:javascript
复制
npm start

显示某个包信息

代码语言:javascript
复制
yarn info <package>

这个命令会拉取包的信息并返回为树格式,例如:

代码语言:javascript
复制
yarn info react
代码语言:javascript
复制
yarn info vx.x.x
{ name: 'react',
  version: '15.4.0-rc.2',
  description: 'React is a JavaScript library for building user interfaces.',
  time: { modified: '2016-10-06T22:09:27.397Z', ... } 
  ...
}

这个命令默认的报告样式是单引号序列化的,如果要输出有效的 JSON 行格式,就使用标准的 --json 标志:

代码语言:javascript
复制
yarn info react --json
代码语言:javascript
复制
{"type":"inspect","data":{"name":"react","time":{...}}}{"type":"finished","data":417}

npm 方式:

代码语言:javascript
复制
npm info <package>npm info <package> --json

列出项目的所有依赖

代码语言:javascript
复制
yarn list

npm 方式:

代码语言:javascript
复制
npm list

Yarn 中的 list 命令列出当前工作文件夹所有的依赖,通过参考所有包管理器的元信息文件,包括项目的依赖,例如:

代码语言:javascript
复制
yarn list vx.x.x
├─ package-1@1.3.3
├─ package-2@5.0.9
│  └─ package-3@^2.1.0
└─ package-3@2.7.0

默认情况下,所有包的依赖会被显示,如果要限制依赖的深度,你可以给 list 命令添加一个标志 --depth 所需的深度:

代码语言:javascript
复制
yarn list [--depth] [--pattern]

例如:

代码语言:javascript
复制
yarn list --depth=0

管理 yarn 配置文件

设置

代码语言:javascript
复制
yarn config set <key> <value> 

npm 方式:

代码语言:javascript
复制
npm config set <key> <value> 

读取

代码语言:javascript
复制
yarn config get <key>

npm 方式:

代码语言:javascript
复制
npm config get <key>

删除

代码语言:javascript
复制
yarn config delete <key>

npm 方式:

代码语言:javascript
复制
npm config delete <key>

查看当前配置

代码语言:javascript
复制
yarn config list

npm 方式:

代码语言:javascript
复制
npm config list

设置淘宝镜像

代码语言:javascript
复制
yarn config set registry https://registry.npm.taobao.org

npm 方式:

代码语言:javascript
复制
npm config set registry https://registry.npm.taobao.org

缓存

列出已缓存的包

代码语言:javascript
复制
yarn cache list

列出匹配指定模式已缓存的包

代码语言:javascript
复制
yarn cache list --pattern <pattern>

例如:

代码语言:javascript
复制
yarn cache list --pattern gulp
yarn cache list --pattern "gulp|grunt"
yarn cache list --pattern "gulp-(match|newer)"

打印出当前 yarn 全局缓存的位置

代码语言:javascript
复制
yarn cache dir

清除缓存

代码语言:javascript
复制
yarn cache clean

此外,您可以指定一个或多个想要清除的包:

代码语言:javascript
复制
yarn cache clean [<module_name...>]

改变缓存路径

设置 cache-folder 来配置缓存目录:

代码语言:javascript
复制
yarn config set cache-folder <path>

你也可以用 --cache-folder 标志指定缓存目录:

代码语言:javascript
复制
yarn <command> --cache-folder <path>

你还可以通过环境变量 YARN_CACHE_FOLDER 指定缓存目录︰

代码语言:javascript
复制
YARN_CACHE_FOLDER=<path> yarn <command>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Yarn 简介
  • 安装
  • 常用命令
    • 初始化新项目
      • 添加依赖包
        • 升级依赖包
          • 移除依赖包
            • 安装项目的全部依赖
              • 运行脚本
                • 显示某个包信息
                  • 列出项目的所有依赖
                    • 管理 yarn 配置文件
                      • 缓存
                        • 改变缓存路径
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档