复制node_modules是否安全?

ben*_*ben 16 node.js

如果我想复制一个节点项目:如果我只是node_modules从头开始通过npm 复制或安装所有模块,它会有什么不同吗?

Sly*_*nal 15

2017年5月12日

我已经更新了这个答案,以反映自npm 3.x发布以来可用的新工具的变化.

npm v3依赖项安装现在是非确定性的,这意味着您可能会获得不同的软件包,具体取决于软件包随时间安装的顺序.这不一定是坏事,只是需要注意的事情.

鉴于这种变化,我个人不会node_modules过多地复制我的目录(虽然它仍然可以!)而是大多数时候选择干净安装.

有一些新的工具,比如Yarn Package Manager,如果你这么做的话可以加快安装过程(但是从2017-05-12开始,还不清楚它处理私有npm组织和私有范围包的程度如何).

因此,外卖仍然几乎相同:它不会受到伤害,但可能在干净安装方面犯错.如果确实发生了奇怪的事情而你遇到了问题,那么你可以删除node_modules并运行npm install.


2014-06-08的原始答案:

一般来说它应该没问题 - 我node_modules有时会从我的其他项目中复制目录以加快设置过程.

您可以随时复制node_modules然后运行npm installnpm update在新项目中确保您拥有最新版本.npm将使用这些文件node_modules作为缓存,并且只应在需要时删除更新的内容.

简而言之:它不会受到伤害.如果确实发生了奇怪的事情而你遇到了问题,那么你可以删除node_modules并运行npm install.