一尘不染

git存储库中是否应包含“ node_modules”文件夹

node.js

我想知道在检查代码时是否应该在回购中跟踪node_modules或进行npm安装?


阅读 265

收藏
2020-07-07

共1个答案

一尘不染

答案并不像阿尔贝托·扎卡尼(Alberto Zaccagni)所建议的那样容易。如果您开发应用程序(尤其是企业应用程序),则在git
repo中包含node_modules是一个可行的选择,您选择哪种选择取决于您的项目。

因为他非常反对node_modules,所以我将集中讨论它们的参数。

想象一下,您刚刚完成了企业应用程序,并且您将需要支持3-5年。您绝对不希望依赖某人的npm模块,该模块将来可能会消失并且无法再更新您的应用程序。

或者您拥有无法从Internet访问的私有模块,并且无法在Internet上构建应用程序。或者,由于某些原因,您可能不想依赖最终的npm服务构建。

您可以在Addy Osmani的这篇文章中找到优缺点(尽管它与Bower有关,但情况几乎相同)。最后,我引用Bower主页和Addy的文章的报价:

“如果您没有编写要供他人使用的软件包(例如,您正在构建Web应用程序),则应始终将已安装的软件包检入源代码管理中。”

2020-07-07