You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
经过查找资料,发现这是 byDesign 的:看起来只是 project 的 deps 是 soft link 到 .pnpm 目录,但 .pnpm 中的 pkgs 的确是 link 到了全局的 pkgs 缓存,只是用了 hard link,直接 ls 命令罗列的内容无法一眼看出 hard link(实际上第二列、即权限列后的数字,就是 hard link 的数量)
之前知道 pnpm 是节约磁盘的,以为就是 packages 都下载到一个全局位置,各 project 的 deps 中直接 soft link(也没实际尝试
最近手头的 project 切换到 pnpm,install 后发现是在
project/node_modules
中有个.pnpm
目录、其中是各 package 各版本,项目的 deps 则 soft link 到.pnpm
中对应的 pkg。这就引起我的疑惑:如此的话,当我要 re-install 时、直接删除整个
node_modules
目录,.pnpm
目录也被删了,再 install 时岂不是要重新下载?还是说我这 project 单独配置了要这样?经过查找资料,发现这是 byDesign 的:看起来只是 project 的 deps 是 soft link 到
.pnpm
目录,但.pnpm
中的 pkgs 的确是 link 到了全局的 pkgs 缓存,只是用了 hard link,直接 ls 命令罗列的内容无法一眼看出 hard link(实际上第二列、即权限列后的数字,就是 hard link 的数量)reference:
https://javascript.plainenglish.io/what-is-pnpm-why-you-should-try-it-as-a-frontend-developer-69a3a7b34f5b
https://pnpm.io/faq#why-does-my-node_modules-folder-use-disk-space-if-packages-are-stored-in-a-global-store
The text was updated successfully, but these errors were encountered: