本文介绍 JavaScript 包管理相关知识。
npm
npm 是当前最大的软件 registry。
registry
client
npm cli 工具可和 registry 进行交互。常用的命令有:
init
创建新的 npm package。
install
可以安装多种形式的 package。关于 package.json。
uninstall
upgrade
config
npm 通过 .npmrc
来管理配置,该文件有四个级别:
- project
- user
- global
- build-in
可通过命令 npm config list
产看当前配置。
由于国内直接使用 npm 的官方镜像是比较慢,可以通过更换其他国内镜像进行加速。这里推荐淘宝 npm 镜像,同步频率目前为 10 分钟一次。
npm config set registry https://registry.npm.taobao.org
但这种方法搜索 package 时需要添加--registry=https://registry.npmjs.org
。
npx
yarn
yarn 是由 Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具,目标是解决 npm 已有的一些问题,比如速度慢,安装版本不统一等。
yarn config set registry https://registry.npm.taobao.org
关于 yarn 与 npm 的比较,可以参看 Yarn vs NPM: Which One is Best to Choose?,这里直接说结论:如果不是为了兼容 Nodejs 老版本(<5.0),使用 yarn 更好。
pnpm
pnpm 相比较 npm/yarn 速度更快,更省磁盘空间。
这里需要吐槽的 pnpm path
没有 patch-package
使用方便,而且有时候不能正常进行 patch。
评论