-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
速度快
在 clean install、with cache、with lockfile、with node_modules 的各种安装情景下,相对于 npm、yarn(yarn PnP)都有明显速度优势
yarn PnP 模式
https://loveky.github.io/2019/02/11/yarn-pnp/
高效利用磁盘
pnpm 内部使用基于内容寻址的文件系统来存储磁盘上所有的文件,这个文件系统出色的地方在于
- 不会重复安装同一个包,磁盘中只有一个地方写入,后面再次使用都会直接使用硬链接
- 即使一个包的不同版本,pnpm 也会极大程度地复用之前版本的代码
支持 monorepo
pnpm 与 npm/yarn 另外一个很大的不同就是支持了 monorepo,体现在各个子命令的功能上,比如在根目录下 pnpm add A -r, 那么所有的 package 中都会被添加 A 这个依赖,当然也支持 --filter字段来对 package 进行过滤
安全性高(没有幻影依赖)
没有 npm/yarn 扁平化安装导致的幻影依赖问题