yarn 的安装和使用

kkcode
kkcode
2023-11-02阅读 2161

Yarn 的简介:

 Yarn 是 facebook 发布的一款取代 npm 的包管理工具;

Yarn 的特点:

 1)速度超快 ----Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。同时利用并行下载以最大化资源利用率,因此安装快。

2)超级安全 ---- 在执行代码之前,Yarn 会通过算法检验每个安装包的完整性。

3)超级可靠 ----- 使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异工作。

Yarn 的安装:

 1、下载 nodejs, 使用 npm 安装   npm install -g yarn,查看版本 :yarn --version

   2、下载 node.js, 下载 yarn 的安装程序 ---- 提供一个. msi 文件,在运行时将引导您在 Windows 上安装 Yarn;

   3、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 的常用命令:

 1、安装 yarn-----npm install -g yarn

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

  3、创建文件夹 yarn-----md  yarn

  4、进入 yarn 文件夹 ----cd yarn

  5、初始化项目   yarn init  // 同 npm init, 执行输入信息后,会生成 package.json 文件

  6、yarn 的配置项:

    yarn config list // 显示所有配置项

    yarn config get <key> // 显示某配置项

    yarn config delete <key> // 删除某配置项

    yarn config  set <key> <value> [-g|--global] // 设置配置项

  7、安装包:

    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

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

    yarn add [package] // 在当前项目中添加一个依赖包,会自动更新到 package.json 和 yarn.lock 文件中

    yarn add [package]@[version]  // 安装指定版本,这里指的是主要版本,如果需要精确到小版本,使用 -E 参数

    yarn add [package]@[tag] // 安装某个 tag (比如 beta,next 或者 latest)

  9、不指定依赖类型默认安装到 dependencies 里,你可以指定依赖类型:

    yarn  add --dev/-D  // 加到 devDependencies

    yarn  add --peer/-P // 加到 peerDependencies

    yarn  add --optional /-O // 加到 optionalDependencies

10、默认安装包的主要版本里的最新版本,下面两个命令可以指定版本:

    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  --title /-T // 安装包的次要版本里的最新版。例如:yarn add foo@1.2.3 --title 会接受 1.2.9,但不接受 1.3.0

 11、发布包

       yarn publish

 12、移除一个包

      yarn remove [packageName] : 移除一个包,会自动更新 package.json 和 yarn.lock

13、更新一个依赖

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

14、运行脚本

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

15、显示某个包的信息

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

16、缓存

     yarn  cache

    ---a) yarn cache  list # 列出已缓存的每个包

    ---b) yarn cache  dir #返回 全局缓存位置

    ---c) yarn cache  clean # 清除缓存

npm 与 yarn 命令比较:

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 Registry 操作
npm run/testyarn run/test运行某个命令

  npm 与 yarn 相关问题比较:

1)模块依赖历史依赖

比如说你的项目模块依赖:@1.2.1 代表这个模块的版本。在你安装 A 的时候需要安装依赖 C 和 D,很多依赖不会指定版本号,
默认会安装最新的版本,这样就会出现出题:比如今天安装模块的时候 C 和 D 是某一个版本,而当以后 C、D 更新的时候,再次安装模块就会安装 C 和 D 的最新版本。如果新的版本无法兼容你的项目,你的程序可能就会出 BUG,甚至无法运行。这就是 npm 弊端,而 yarn 为解决这个问题推出了 yarn.lock 的机制。

原文地址 www.cnblogs.com

评论数量:0