简介
在 JavaScript 社区中,工程师们互相分享成千上万的代码,帮助我们节省大量编写基础组件、类库或框架的时间。每个代码包可能都依赖于其他代码,而代码间的依赖关系则由包管理器负责维护。目前最流行的 JavaScript 包管理器是 npm
客户端,在 npm
仓库中提供了多达 30 万的软件包。据统计,已有超过 500 万的工程师使用 npm
仓库,其软件包下载量达到了 50 亿次/月。
在 Facebook 中,我们多年来一直在使用 npm
客户端并取得了成功,但随着代码仓库与团队人数的增长,我们在一致性、安全性以及性能方面遇到了挑战。在尝试解决每个方面的问题后,我们最终决定着手打造一套新的客户端解决方案,以帮助我们更可靠地管理依赖。我们把这个客户端工具称为Yarn
—— 更加快速、可靠、安全的 npm
客户端的替代品。
与 Exponent、 Google 和 Tilde 进行了合作,并开源 Yarn
项目。工程师在使用 Yarn
时,依然需要访问 npm
仓库,但 Yarn
能够更快速地安装软件包和管理依赖关系,并且可以在跨机器或者无网络的安全环境中保持代码的一致性。Yarn
提高了开发效率,并解决了共享代码时面临的一些问题,使得工程师们可以专注在构建新产品以及新特性上。
特性
本地缓存
类似 Gradle,Yarn 会把使用过的模块在本地缓存一份,如果下次还要用到相同版本的模块,那么将会直接使用本地的而不是访问网络重新获取一份。
这个特性碾压 NPM 了啊有木有!我之前使用 NPM 的时候一直想吐槽这个来着,如果全局安装项目就会依赖环境,如果不全局安装那么每个项目都要重新下载一次包,浪费时间和资源。
安全性
安装之前会验证文件完整性,所以不用担心安装到损坏的文件啦
可靠
Facebook 都把它用在生产环境中了,Google 也要参与维护了,Github 上那么多的 star,绝壁可靠了吧
更优雅的命令
命令相比起 NPM 更容易理解,默认的设置足够贴心,感觉要起飞了
使用
说了这么多也心动了,那么我们就开始安装 Yarn 吧。
安装
笔者使用的是 Mac,所以只会介绍 Mac 的安装方法,其它方式请参照 Installation Guide
Mac 上有三种安装方式,推荐使用 Homebrew 安装。
Homebrew安装
输入以下命令即可
brew update
brew install yarn
如果使用 NVM 的话,可以删除依赖中的 node:
brew uninstall node
安装脚本
下载官网提供的安装脚本来安装
curl -o- -L https://yarnpkg.com/install.sh | bash
npm 安装
这是最不推荐的一个方式
npm install --global yarn
验证安装成功
选择以上三个方法之中的任意一种安装成功之后,运行如下命令检测是否安装成功
yarn --version
如果提示没有命令,去修改.zshrc
(或.profile
, .bashrc
)添加如下语句
export PATH="$PATH:$HOME/.yarn/bin"
常用命令
安装完毕了,那么就要使用它了,下面是一些常用命令和 NPM 对应命令的对照表
作用 | NPM 命令 | Yarn 命令 |
---|---|---|
安装 | npm install | yarn |
安装某个包 | npm install xxx —save | yarn add xxx |
删除某个包 | npm uninstall xxx —save | yarn remove xxx |
开发模式下安装某个包 | npm install xxx —save-dev | yarn add xxx —dev |
更新 | npm update —save | yarn upgrade |
全局安装 | npm install xxx –global | yarn global add xxx |
还有一些包发布者才会用到的命令就不作详细讲解了
总结
yarn 目前来说已经可以做到替换 npm 了,赶紧使用它换取更高的工作效率吧,Enjoy it~
网友评论