Yarn安装与镜像设置

介绍

  Yarn 就是一个类似于 npm 的包管理工具,它是由 facebook 推出并开源。
  与 npm 相比,yarn 有着众多的优势,主要的优势在于:速度快、离线模式、版本控制。

安装

  macOS有几种安装yarn的方式,如下:

  1. 使用homebrew安装yarn
      使用homebrew安装,如果node.js没有安装,那么它会自动安装node.js

    brew install yarn

      如果你用的是 nvm 或类似工具,你需要确保 PATH 变量中列出的 nvm 版本的路径在 Homebrew 安装的 Node.js 路径之前。

  2. 使用MacPorts安装yarn
      你可以通过 MacPorts 安装 Yarn 。 如果你还未安装 Node.MacPorts 会自动为你安装。

    sudo port install yarn
  3. 使用脚本安装yarn
      macOS属于Unix系统的分支,在Unix环境下,使用脚本安装是很方便。

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

      安装指定版本的yarn

    curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version 1.19.1
  4. 通过tarball手动安装
      你可以通过下载tarball并在任何地方提取它来安装yarn。

    cd /opt
    wget https://yarnpkg.com/latest.tar.gz
    tar zvxf latest.tar.gz
    # Yarn is now in /opt/yarn-[version]/

      在提取yarn之前,建议您使用GPG验证tarball:

    wget -qO- https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --import
    wget https://yarnpkg.com/latest.tar.gz.asc
    gpg --verify latest.tar.gz.asc
    # Look for "Good signature from 'Yarn Packaging'" in the output
  5. npm来安装(推荐)
      虽然安装 yarn 可以不依赖 npm,但这里还是建议你使用 npm 来安装吧,快速而简洁:

    sudo -s
    npm install yarn -g

Yarn 换源

  Yarn 源仓库包下载不稳定

# 查看 yarn 配置
yarn config get registry
或者
yarn config list

> registry: 'https://registry.yarnpkg.com'
# 设置为淘宝镜像
yarn config set registry https://registry.npm.taobao.org
# 设置为官方镜像
yarn config set registry https://registry.yarnpkg.com
yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global

  我们使用yrm来做yarn的镜像管理器;首先需要下载,使用如下命令下载安装

npm i yrm -g

  之后可以通过以下命令来查看所提供的镜像地址

yrm ls

  可以看到

*  npm ---- https://registry.npmjs.org/
  cnpm --- http://r.cnpmjs.org/
  taobao - https://registry.npm.taobao.org/
  nj ----- https://registry.nodejitsu.com/
  rednpm - http://registry.mirror.cqupt.edu.cn/
  npmMirror  https://skimdb.npmjs.com/registry/
  edunpm - http://registry.enpmjs.org/
  yarn --- https://registry.yarnpkg.com

  所示的是我们现在的源地址是npm,让我们来切换镜像源吧,使用yrm use 镜像名,如我们切换成淘宝镜像

yrm use taobao

  可以看到

YARN Registry has been set to: https://registry.npm.taobao.org/

NPM Registry has been set to: https://registry.npm.taobao.org/

升级

  有新版时,Yarn 会给你提示。 如需升级 Yarn ,仍然可以通过 Homebrew 来升级。

brew upgrade yarn

  通过如下命令测试 Yarn 是否安装成功:

yarn --version

建议

  我们选择 yarn 的主要原因是依赖安装速度快,默认生成的 yarn.lock 会保证所有成员的模块依赖目录能够很好的保持一致。
  yarn install 和 yarn upgrade 的执行逻辑,可以让你可以很清晰的管理本地依赖的版本更新时机,又能很好的让所有开发人员的本地依赖保持一致性。
  使用 npm install 则有些乱,当你不想写死版本号依赖时,它总会安装依赖包最新可用的版本,但这在有时候并不是你想要的。
  在 yarn 之前,我们使用的是 npm+淘宝仓库方案,也会使用 cnpm。在国内,cnpm 的依赖安装速度比 yarn 还要快,但 cnpm 在 windows 下通过创建链接引用的方式管理包依赖,可能会带来一些问题。
  现在我们会默认使用淘宝仓库,使用 npm 管理全局依赖,使用 yarn 管理具体项目内的依赖。
  在一个新的项目中使用 yarn,我们会这么来做:
  1. 写好 package.json,写入初始的第三方依赖
  2. 执行 yarn 命令,初始化安装项目依赖,生成 yarn.lock 文件
  3. 后续通过执行 yarn add xxx 添加更多需要的依赖(也可直接在 package.json 文件中写入)
  4. 当确定需要更新依赖模块到其最新版本时,执行 yarn upgrade 命令
  5. 配置项目启动命令执行前,先执行 yarn 命令,以保证当 yarn.lock 被更新时,本地依赖也及时得到更新。例如,在 package.json 的 script 部分中配置 start 命令: “start”: “yarn && yarn run build:dev”


yarn安装
npm
yarn