前端包管理器

npm

  • 递归依赖树
  • 多次安装
  • node_module文件夹结构的依赖从嵌套到平铺,引入幽灵依赖的问题

yarn

  • 多项目(monorepe)支持

  • 缓存安装 离线下载

  • 并行下载

  • 文件锁

  • 平铺

pnpm

  • 硬链接

注:硬链接是多个文件名指向同一个文件的实际内容,而软链接(符号链接)是一个独立的文件,指向另一个文件或目录的路径

  • 解决npm、yarn中平铺依赖存储冗余的问题 (npm和yarn只能提升一层)
  • 内存寻址存储,实际存储在~/.pnpm-store/
  • 只有项目中真正依赖的包,才会在node_modules的目录下,解决幽灵依赖问题
ON THIS PAGE