当前位置: 首页 > 面试题库 >

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

云昊阳
2023-03-14
问题内容

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


问题答案:

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

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

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

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

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

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



 类似资料:
  • 我想用gradle编译我的grpc/proto文件。爪哇,科特林(protobuf 任何提示都非常感谢。

  • 使用start创建spring boot项目时。Springio中,包含一些maven包装文件: mvnw 提交到git repo时是否应该忽略这些文件?

  • 是否有任何方法(内置或附加)加密存储库中的单个文件,可供有限的人访问。这些人签入时的文件将在签出时自动加密和解密。如果其他人试图访问,它们将保持加密。

  • 文件包含app的,位置和密码。所以我想知道,我是否应该将它们包含在公共GitHub存储库中? 我的猜测是“不”,如果是这样,我该如何解决这个问题?我是否可以对其进行审查,或者干脆不将文件包含在提交中? 如果我应该将它们从提交中保留,我如何解决拉取项目的问题,因为文件会丢失?

  • 我学习了关于GIT的vogella教程,第17节练习“使用(本地)远程存储库”。在执行步骤17.3时,我得到了这个错误: 执行的步骤是: 原因会是什么呢?

  • 我需要构建一个带有依赖项的发行版jar,其中包含一个依赖项jar,由于某些原因,该jar不能放入Maven.m2/repository。在我的POM文件中我有: 构建成功,但结果myapp-1.0.0-jar-with-dependencies.jar不包含该库中的类,因此抛出ClassNotFoundException。我试图创建Assembly.xml文件来手动管理这个jar文件,但是插件文档