yarn - 一个可能取代npm的新型包管理器[Facebook出品,附带中文使用教程]

原创 2016年10月12日 14:22:28

这里写图片描述

yarn

仅仅一夜,却也是无数个日夜,FaceBook 开源了 yarn 这个新的 JavaScript 包管理工具,
这个和 Exponent, Google, 以及 Tilde 合作完成的项目。
官网 | Github Repo
yarn出现的缘由 — 解决npm历史遗留的痛点


亮点

  1. 极致的快速—会缓存已经下载过的包,避免重复下载~~~这特性比npm好多了,不用每次都请求下载
    • 离线模式 — 之前下载过的包,可以离线再次安装
  2. 安全 — 下载前会检查签名及包的完整性
  3. 可靠可确定性
    • 保证各平台依赖的一致性
  4. 网络优化 — 力求网络资源最大利用化,让资源下载完美队列执行,避免大量的无用请求,下载失败会自动重新请求,避免整个安装过程失败
  5. 扁平化模式 — 对于不匹配的依赖版本的包创立一个独立的包,避免创建重复的。

下载安装 — 支持多平台

因为他们的下载包基本都是放在Amazon上的,版本什么也会随时更新,我就不给出单独版本的下载链接了;
可以自行到下载页面下载,此处只是给出教程 —— 下载传送门

注意:命令行模式基本三平台一样

  1. window — 一直下一步下一步,现在安装目录什么的,然后打开cmd输入yarn --version就能看到版本号。。如图

    • 提供的.msi后缀格式的安装包,前提需要依赖nodejs(也就是说需要先安装nodejs)
      这里写图片描述
  2. Linux — 提供了debian家族的apt-get包管理器安装的还有rhel家族的yum管理器安装的

    • 这里就不点缀了,也是在终端执行,,非常简单。。。
  3. MacOS – 有两种安装模式,一种是下载脚本执行,一种下载压缩包解压。。。后者跟Linux下载编译包一个道理,这里还不需要编码,解压即可使用
    1. 在终端执行curl -o- -L https://yarnpkg.com/install.sh | bash ,下载脚本并且执行
    2. 同样在终端执行
    cd /opt      #注释请忽略,这个是切换到目录
    wget https://yarnpkg.com/latest.tar.gz  #用wget下载tar.gz包
    tar zvxf yarn-*.tar.gz   #解压包
    # Yarn is now in /opt/yarn-[version]/  

小科普: MacOS有BSD的血统,Linux类UNIX,两者都是类UNIX。。。所以会Linux的小伙伴搞MacOS感觉都差不多,都能速度上手,大同小异滴


使用教程

跟npm的用法非常类似,且待我细细到来~

三步走

  1. 项目下初始化 - 切到你的项目下,执行yarn init,会在根目录下生成一个package.json
  2. 添加依赖安装
  3. 开工

命令解释

  • yarn init #初始化package.json – 和npm一致
    这里写图片描述
    • name : 项目名
    • version : 版本号
    • description : 项目描述
    • entry point : 入口文件
    • git repository: git项目链接地址
    • author : 作者
    • license : 协议
{
  "name": "yarn-demo",
  "version": "1.0.0",
  "description": "This is yarn-demo.",
  "main": "index.js",
  "repository": {
    "url": "....",
    "type": "git"
  },
  "author": "LinQunHe(CRPER)",
  "license": "MIT",
  "dependencies": {
    "jquery": "2.1.4"
  }
}

添加依赖

  • yarn add [package] — 添加包,会自动安装最新版本,注意会覆盖指定版本号!!!

这里写图片描述

  • yarn add [package]@[version] — 带版本号安装

这里写图片描述

  • yarn add [package]@[tag] — tag,是指代git上的推送的tag【no release!!】,看图

这里写图片描述

更新依赖

tips: 估计管理器还有些不完善,不能单独升级某个依赖。会提示error This command doesn’t require any arguments. — 意思就是该命令不需要任何参数【不带参数】

  • yarn upgrade [package] — 更新某个包
  • yarn upgrade [package]@[version] — 指定更新到某个版本
  • yarn upgrade [package]@[tag] — 指定更新版本到某个标签

以上不能使用, 唯一能用的是在项目下执行,yarn upgarde, 会遍历所有依赖,然后全部更新

这里写图片描述

移除依赖

  • yarn remove [package] — 移除某个包
    这里写图片描述

在其他项目启动项目

类似npm,执行npm install;

yarn管理器支持两种安装所有依赖的命令:yarn 或者 yarn install

当然,还有一些其他不常用的命令,比如发布什么的,,具体可以看这里 —- 传送门


总结

yarn管理器有一个很重要的文件需要注意,就是yarn.lock,这个是用来依赖的正确性,快速可靠安装的;是执行cli的时候自动生成的,在项目的根目录下,需要保留!!!!不要编辑它,这是自动生成的

在其他电脑初始化,必须记得把package.jsonyarn.lock复制过去,简直就是秒下载【缓存机制】,如图;

这里写图片描述

据说npm的开发者也参与了yarn的开发。。。这货以后有取代npm的倾向。。。

版权声明:版权所有:CRPER;

相关文章推荐

hadoop yarn简明教程

yarn架构设计与实现原理产生的背景 mrv1的局限性扩展性差 jobtracker限制 可靠性差 jobtracker单点故障 资源利用率低 槽位之间的资源无法共享 无法支持多种计算框架 轻量级弹性...

Alex 的 Hadoop 菜鸟教程: 第5课 YARN 安装以及helloworld (基于centos的CDH)

根据cdh官方文档的教程做一个简单的例子,但是cdh的教程写的不严谨,有很多坑等着你去跳,所以我改造了一下写成了这篇文章

【学习笔记】npm与yarn命令行对比

由于有些时候npm不太好用,因此我们有必要了解yarn这个工具,以下是这两个工具的命令行对比。参考文献 伯乐在线 npm vs yarn你需要知道的一切

yarn 使用简介

yarn 替换 npm yarn 安装 mac:brew install yarn win:https://yarnpkg.com/latest.msi linux(Ubuntu):echo "deb...

yarn命令使用

yarn 命令使用版本说明 (当前文档使用版本) yarn : 0.1 安装 macOS 通过 homebrew 安装 brew install yarn Windows 下载安装 下载...

javascript跳跃式前进(5) - 深入浅出this[六种模式]

问this为何物,直教人苦逼不已
  • bomess
  • bomess
  • 2016-10-11 13:50
  • 1278

electron打包asar文件说明

1 安装eleoctron            安装说明:http://www.w2bc.com/article/103302 2打包发布:     ...

Webpack 1 折腾记 - (1)webpack是什么鬼!

webpack为何物!简单点说:webpack只是一个打包工具,顺应时代产生的(如今还有一个也很火,叫做rollup),但是webpack具有一些传统打包工具所没有的亮点。
  • bomess
  • bomess
  • 2016-10-10 13:45
  • 1347

CSS3 - 说说CSS上的第一个变量currentColor,及扯扯inherit

currentColor – 这货说是CSS3的一个特性,但是用变量来说会更好理解;兼容性[IE9+ 及主流的FF,chrome ]。但是IE10及edge有一些BUG(用于渐变的时候会不生效)
  • bomess
  • bomess
  • 2016-10-10 00:25
  • 2366

yarn的基本使用

Yarn是facebook最近开源的一款javascript包管理工具。最大的特点就是速度快,可靠,安全的依赖管理。 安装yarn npm install -g yarn yar...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)