简介
Yarn 对你的代码来说是一个包管理器。它可以让你使用并分享 全世界开发者的(例如 JavaScript)代码。 Yarn 能够快速、安全、 并可靠地完成这些工作,所以你不用有任何担心。
通过Yarn你可以使用其他开发者针对不同问题的解决方案,使自己的开发过程更简单。 使用过程中遇到问题,你可以将其上报或者贡献解决方案。一旦问题被修复, Yarn会更新保持同步。
代码通过 包(package) (或者称为 模块(module)) 的方式来共享。 一个包里包含所有需要共享的代码,以及描述包信息的文件,称为 package.json
。
使用Yarn的优势
1. Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快。
2. 在执行代码之前,Yarn 会通过算法校验每个安装包的完整性。
3. 使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异的工作。
创建项目:yarn init
安装依赖包:yarn
== yarn install
添加依赖包:yarn add
配置淘宝镜像:yarn config set registry "https://registry.npm.taobao.org"
命令 | 操作 | 参数 | 标签 |
yarn add | 添加依赖包 | 包名 | --dev/-D |
yarn bin | 显示yarn安装目录 | 无 | 无 |
yarn cache | 显示缓存 | 列出缓存包:ls,打出缓存目录路径:dir,清除缓存:clean | 无 |
yarn check | 检查包 |
|
|
yarn clean | 清理不需要的依赖文件 |
|
|
yarn config | 配置 | 设置:set <key> <value>, 删除:delete, 列出:list | [-g | --global] |
yarn generate-lock-entry | 生成锁定文件 | 无 | 无 |
yarn global | 全局安装依赖包 | yarn global <add/bin/list/remove/upgrade> [--prefix] | --prefix 包路径前缀 |
yarn info | 显示依赖包的信息 | 包名 | --json:json格式显示结果 |
yarn init | 互动式创建/更新package.json文件 | 无 | --yes/-y:以默认值生成package.json文件 |
yarn install | 安装所有依赖包 |
| --flat:只安装一个版本;--force:强制重新下载安装;--har:输出安装时网络性能日志;--no-lockfile:不生成yarn.lock文件;--production:生产模式安装(不安装devDependencies中的依赖) |
yarn licenses | 列出已安装依赖包的证书 | ls:证书列表;generate-disclaimer:生成免责声明 |
|
yarn link | 开发时链接依赖包,以便在其他项目中使用 | 包名 |
|
yarn login | 保存你的用户名、邮箱 |
|
|
yarn logout | 删除你的用户名、邮箱 |
|
|
yarn list | 列出已安装依赖包 |
| --depth=0:列表深度,从0开始 |
yarn outdated | 检查过时的依赖包 | 包名 |
|
yarn owner | 管理拥有者 | ls/add/remove |
|
yarn pack | 给包的依赖打包 | --filename |
|
yarn publish | 将包发布到npm |
| --tag:版本标签;--access:公开(public)还是限制的(restricted) |
yarn remove | 卸载包,更新package.json和yarn.lock | 包名 |
|
yarn run | 运行package.json中预定义的脚本 |
|
|
yarn self-update | yarn自身更新--未实现 |
|
|
yarn tag | 显示包的标签 | add/rm/ls |
|
yarn team | 管理团队 | create/destroy/add/rm/ls |
|
yarn test | 测试 = yarn run test |
|
|
yarn unlink | 取消链接依赖包 |
|
|
yarn upgrade | 升级依赖包 |
|
|
yarn version | 管理当前项目的版本号 | --new-version :直接记录版本号;--no-git-tag-version:不生成git标签 |
|
yarn why | 分析为什么需要安装依赖包 | 包名/包目录/包目录中的文件名
|
|