什么是 Yarn?
这里引用中文官网的说明:
Yarn 是一个依赖管理工具。它能够管理你的代码,并与全世界的开发者分享代码。Yarn 是高效、安全和可靠的,你完全可以安心使用。
Yarn 能够让你使用其他开发者开发的代码,让你更容易的开发软件。如果你在使用中发现任何问题,欢迎发 issue 或者贡献代码,一旦问题被修复,你就可以继续使用 Yarn 战斗了。
代码是通过包(有时也被称为模块)进行共享的。 在每一个包中包含了所有需要共享的代码,另外还定义了一个 package.json 文件,用来描述这个包。
安装 Yarn
- 安装的教程https://yarn.bootcss.com/docs/install.html#windows-tab
这里我简单介绍我用Windows 10 安装的过程
1、下载安装程序:
你可以下载一份 .msi 文件,运行之后将引导你完成 Yarn 的安装。
如果你使用安装程序的方式,你需要首先安装 Node.js.全程默认安装即可
测试一下 Yarn 是否能够正确运行:
D:\__demo\yarn-test>yarn –version
结果
D:\__demo\yarn-test>yarn -v 1.3.2
如果测试不成功,一般都是环境变量的问题,这个也是Windows的通病,如果用mac就会好点
命令行设置环境变量打开 dos 命令窗口,输入 path 命令 查看已经存在的,环境变量
D:\__demo\yarn-test>path
结果
PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;D:\application\Git\cmd;D:\dev\node-v7.10.0-x64\;D:\application\TortoiseGit\bin;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\dotnet\;D:\application\yarn-1.3.2\bin;C:\Users\xhlm\AppData\Local\Microsoft\WindowsApps;C:\Users\xhlm\AppData\Roaming\npm;D:\application\Microsoft VS Code\bin;C:\Users\xhlm\AppData\Local\Yarn\bin;
设置环境变量
D:\__demo\yarn-test>set path=C:\Users\xhlm\AppData\Local\Yarn\bin;
现在你已经将 Yarn 安装好了,可以开始使用它了。这里有一些最常用的命令,你一定用得着。
初始化一个新的项目
初始化的命令
D:\__demo\yarn-test>yarn init
结果:
{ "name": "no.1", "version": "1.0.0", "description": "no.1 yarn", "main": "index.js", "author": "heping", "license": "MIT" }
添加一个依赖包
yarn add [package]
这里以 gulp 为栗子:
D:\__demo\yarn-test>yarn add gulp
如果安装途中出现错误,yarn会在工程根目录下自动生成yarn-error.log文件,排查问题非常方便。
如果看到这样的目录结构,说明操作成功,这里只是截取的了部分dos输出的日志,太多了,请谅解:
... ├─ user-home@1.1.1 ├─ util-deprecate@1.0.2 ├─ v8flags@2.1.1 ├─ vinyl-fs@0.3.14 ├─ vinyl@0.4.6 ├─ which@1.3.0 ├─ wrappy@1.0.2 └─ xtend@4.0.1 Done in 20.62s.
yarn add [package]@[version]
同样携带版本的命令,得到果请自行考究
D:\__demo\yarn-test>yarn add gulp@3.9.1
这里的tag,指的是 beta、next 或者 latest,我到时用的很少,欢迎指点^_^:
yarn add [package]@[tag]
更新一个依赖包,和安装如出一辙:
yarn upgrade [package]
yarn upgrade [package]@[version]
yarn upgrade [package]@[tag]删除一个依赖包
yarn remove [package]
D:\__demo\yarn-test>yarn remove gulp安装所有的依赖包
yarn
or
yarn install
目录结构
.
├─ node_modules
├─ package.json
└─ yarn.lock
package.json
{
"name": "no.1",
"version": "1.0.0",
"description": "no.1 yarn",
"main": "index.js",
"author": "heping",
"license": "MIT",
"dependencies": {
"gulp": "3.9.1"
}
}
总结
实际体验过程中,yarn确实要比npm更快速,更简单。npm之所以慢是因为目前国内暂时没有cdn节点,所以下载依赖都是跑到国外去下,哈哈。