答案并不像Alberto Zaccagni suggests那么简单.如果您开发应用程序(尤其是企业应用程序),在git repo中包含 node _模块是一个可行的 Select ,您 Select 的替代方案取决于您的项目.
因为他很好地反对node_模块,所以我将集中讨论它们的论点.
想象一下,你刚刚完成企业应用程序,你将不得不支持它3-5年.你肯定不想依赖别人的npm模块,它明天可能会消失,你也不能再更新你的应用了.
或者你的私有模块无法从互联网上访问,你无法在互联网上构建应用程序.或者出于某种原因,你不想依赖npm服务的最终构建.
你可以找到利弊in this Addy Osmani article(虽然它是关于鲍尔,但几乎是相同的情况).最后,我将引用鲍尔主页和艾迪的文章:
"如果您不是在编写一个供他人使用的软件包(例如,您正在构建一个web应用程序),则应始终将已安装的软件包签入源代码管理."