gpt4 book ai didi

node.js - NPM 项目的每个 git 分支是否都有不同的 node_modules 依赖项?

转载 作者:IT老高 更新时间:2023-10-28 23:03:56 44 4
gpt4 key购买 nike

我假设在开发 NPM 项目时,每个 git 分支(或您使用的任何版本控制系统)都可能指向一组不同的 node_modules 在文件系统上。真的吗?这是如何运作的?它对磁盘空间等有什么问题吗?

或者也许,由于 node_modules 最常见的是 .gitignore'd,那么 node_modules 文件在 Git 分支之间共享?再次,这将/如何工作?

*请注意,Node.js/NPM 与其他平台/语言根本不同,因为依赖项通常存储在本地项目中,而不是机器上的某个中心位置。

最佳答案

按照惯例,不应添加任何可以从外部源生成或提取的文件、库或二进制文件。这包括像 node_modules;因为一旦您执行 npm install 就可以轻松获得*,因此没有理由或动机** 想要将其放入源代码控制中。在最坏的情况下,它还会使您的存储库膨胀,用您根本无法控制且不一定要查看的内容填充您的差异。

我不希望 NPM 项目的不同 Git 分支包含不同的 node_modules 文件夹。我只希望有一个 node_modules 文件夹,如果一个分支给了我适合的依赖项,我会重新安装依赖项(并记下它以确保某些东西 else 没有出错)。

作为附录,.gitignore 中的任何文件或文件夹都不会被 Git 索引或跟踪。如果这些文件或文件夹的内容发生变化,Git 也不会更明智。这也意味着,在分支之间切换时,.gitignore中的文件或文件夹的内容保持不变。

*:前提是您使用的库没有突然被 pull 出。或者存储库不受大规模 DDoS 的影响。

**:考虑到今年某些 NPM 包的可靠性还没有达到 100%,可能有这样做的动机,但这是一个团队和架构驱动的决定,我怀疑将它放入源代码管理是最理想和最方便的处理方式。

关于node.js - NPM 项目的每个 git 分支是否都有不同的 node_modules 依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40166440/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com