cnpm和yarn

Posted by Zxd on January 04, 2017

1.NPM

想想还是从介绍npm开始吧.NPM是随同NodeJS一起安装的包管理工具(Node Packaged Modules),通过npm可以下载和安装nodejs的模块包.在node官网下载安装node后,自带了这个工具.

附上Nodejs官网

npm的简单指令

npm安装模块

1
$ npm install <Module Name>

全局安装

1
$ npm install <M> -g #全局

卸载模块

1
$ npm uninstall <Module Name>

查看模块

1
$ npm ls

更新模块

1
$ npm update <Module Name>

搜索模块

1
$ npm search <Module Name>

创建模块

即模块初始化,创建模块时,package.json文件不可少,可以使用生成这个文件.

1
$ npm init

安装并作为package.json的一个依赖(dependency)

1
$ npm install <pkg> --save

查看帮助

1
$ npm help <command>

package.json属性

1
2
3
4
5
6
7
8
9
10
- name 			--包名
- version --包的版本号
- description --包的描述
- homepage --包的官网url
- author --包的作者姓名
- contributors --包的其他贡献者姓名
- dependencies --依赖包列表
- repository --包代码存放的地方的类型
- main --main字段是一个模块ID,它是一个指向你程序的主要项目
- keywords --关键字

CNPM

CNPM其实就是淘宝NPM镜像,这是一个完整npmjs.org镜像,可以用此代替官方版本(只读),同步频率目前为10分钟一次以保证尽量与官方服务同步.

因为npm安装package是从国外服务器下载,速度会受较大影响.如果npm的服务器在国内就会大大的提高下载速度,于是淘宝团队就将整个服务端包都复制了一模一样的,10分钟更新一次,方便国内用户下载

cnpm官网

CNPM安装

1
$ npm install -g cnpm --registry=https://registry.npm.taobao.org

安装了cnpm后,再安装package就可以用cnpm

1
$ cnpm install <Module Name>

同步模块

可以通过sync命令马上同步一个模块,只有cnpm才有这个命令

1
$ cnpm sync connect

cnpm不能使用cnpm publish


使用nrm快速切换npm源

nrm是一个npm源管理器,能让我们在npm源间快速切换.nrm的github

install

1
$ npm install -g nrm

nrm使用

列出可用源

1
$ nrm ls
1
2
3
4
5
 npm ---- https://registry.npmjs.org/
* cnpm --- http://r.cnpmjs.org/
taobao - http://registry.npm.taobao.org/
nj ----- https://registry.nodejitsu.com/
rednpm - http://registry.mirror.cqupt.edu.cn

切换现有源

1
nrm use taobao

添加源

1
$ nrm add <registry> <url> [home]

删除源

1
nrm del <registry>

测试所有源速度

1
nrm test
1
2
3
4
5
6
7
  npm ---- 891ms
cnpm --- 1213ms
* taobao - 460ms
eu ----- 3859ms
au ----- 1073ms
sl ----- 4150ms
nj ----- 8008ms

yarn

终于写到yarn了,yarn是facebook在16年10月11日公开的js包管理工具,用来替代目前广泛使用的npm.yarn的github项目地址.可以看到目前(17年01.04)已有2万多Star了.

yarn和npm都作为nodejs的包管理工具.但相比npm.yarn具有的新亮点如下

  • 网络优化
  • 安全–下载前会检查签名和包的完整性
  • 离线模式–如果之前安装过一个包,再次安装就不用从网络下载了
  • 依赖关系确定性
  • 扁平模式

总结来说,yarn具有快速,安全,可靠的特点

yarn的安装

这里给出官方文档 yarn的安装,没有中文版,比较新.看不懂的话可以使用有道翻译下~~

yarn的使用

项目初始化.切到项目下,会在根目录生成package.json

1
yarn init

添加依赖.添加包,会自动安装最新版本

1
yarn add <package>

更新依赖

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

移除依赖

1
yarn remove <package>

注意

yarn里有个很重要的文件yarn.lock,在项目根目录下,不要去动它,在其他电脑初始化时,需要把package.jsonyarn.lock都复制过去


写了好久,今天就大概总结这么多吧.网上搜了很多资料,如果有不准确的地方欢迎指正 :)