Yarn安装与镜像设置
介绍
Yarn 就是一个类似于 npm 的包管理工具,它是由 facebook 推出并开源。
与 npm 相比,yarn 有着众多的优势,主要的优势在于:速度快、离线模式、版本控制。
安装
macOS有几种安装yarn的方式,如下:
使用homebrew安装yarn
使用homebrew安装,如果node.js没有安装,那么它会自动安装node.jsbrew install yarn
如果你用的是
nvm
或类似工具,你需要确保PATH
变量中列出的 nvm 版本的路径在 Homebrew 安装的 Node.js 路径之前。使用MacPorts安装yarn
你可以通过 MacPorts 安装 Yarn 。 如果你还未安装 Node.MacPorts 会自动为你安装。sudo port install yarn
使用脚本安装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
通过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
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”