如何禁用 git 中的子模块?

Sep*_*eed 5 git git-submodules

我正在尝试创建一个私有的 mono-repo,其中包含具有公共 git 的子包。我绝不打算修改 mono-repo 之外的代码,因此我不需要子模块。事实上,它们正是我不惜一切代价试图避免的事情。

我不想删除我的 mono-repo 中任何包的 .gits,也不想做任何花哨的事情。

如何简单地禁用 git 中的子模块功能?

我不希望任何东西被视为子模块。从来没有,也可能永远不会。

我尝试在 git 中搜索一些 .submodule 文件夹或其他内容。我没有找到。似乎没有设置可以摆脱这些东西。

我找到了这个链接:un-submodule a git submodule

不幸的是,这些解决方案都与展平子模块有关,并且它们都没有涵盖完全禁用该功能的方法。

bk2*_*204 2

Git 没有禁用子模块的功能。它们被认为是核心功能的一部分,而 Git 没有选项来禁用这样的核心功能。添加这样的功能的可能性极小。

如果你不希望你的子仓库被意外地作为子模块签入,你可以忽略它们,在这种情况下 Git 不会签入它们。如果它们已经签入,你可以只运行git rm --cached DIRECTORY每个子模块,然后删除该.gitmodules文件,然后将它们添加到.gitignore.