很多node_modules使我的mac inode用尽了

今天早上我用完了inode。 我发现node_modules/使用了相当多的inode。 这不是最大的麻烦制造者,但它仍然困扰我很多。

我有一个由数百个插件组成的项目。 对于每个插件,我都有一个单独的package.jsonnode_modules 。 由于用户可以select安装我的插件的任何组合,我认为这是一个很好的做法,分别pipe理依赖关系。 但它留给我这么多的小文件,其中大部分是相同的。 例如bootstraplodashlodash

 /project /addon_a /node_modules package.json /addon_b /node_modules package.json 

我可以想到2个可能的解决scheme:

  1. 全局安装最常用的库,并通过不经常升级来pipe理版本。
  2. 共享库之间的共同库,但如何?

仅供参考:我认为这实际上是docker工,而它的朋友用完了索引节点。 我已经通过删除和pipe理一些docker图像恢复。 但我绝对相信,node_modules总有一天会成为同样问题的原因。

你有没有尝试npm dedupe

它search本地包树,并尝试通过将依赖关系进一步移到树上来简化整体结构,从而可以更有效地在多个依赖包中共享它们。

https://docs.npmjs.com/cli/dedupe