我有多个 Vue.js 项目分布在笔记本电脑的文件系统中。我已经搜索并找到了使用 pnpm 解决 npmnode_modules
文件夹大小问题的解决方案。使用 安装项目依赖项后pnpm i
,该node_modules
文件夹的大小仍然表示它在每个项目中占用 233 MB 空间。我只是想知道所有这些项目的node_modules
文件夹是否都使用相同的 233 MB 硬盘空间,假设所有项目都具有相同的依赖项。
问问题
405 次
1 回答
3
是的,所有这些项目都node_modules
使用相同的 233 MB 磁盘空间。
如果包存储在全局存储中,为什么我的 node_modules 文件夹会使用磁盘空间?
pnpm 创建从全局存储到项目的 node_modules 文件夹的硬链接。硬链接指向磁盘上原始文件所在的相同位置。因此,例如,如果您的项目中有 foo 作为依赖项并且它占用 1MB 的空间,那么它看起来会在项目的 node_modules 文件夹中占用 1MB 的空间,并且在全局存储中占用相同数量的空间。但是,这 1MB 是从两个不同位置寻址的磁盘上的相同空间。所以 foo 总共占用 1MB,而不是 2MB。
有关此主题的更多信息:
于 2019-03-07T09:36:47.440 回答