将 git 存储库中的现有子目录转换为嵌套的子 git 存储库

Transform existing subdirectories inside a git repository into nested sub-git repositories

我只能访问一 (1) 个且只有一个 git 远程存储库。

在 git 个存储库中,我有这样的结构:

现在,如果我更改 A、B、C 中的某些内容,则会作为根 git 存储库的一部分进行跟踪。

我想按如下方式转换我当前的 git 存储库:

现在我阅读了有关子模块的内容,但据我所知,我将不得不使用不同的远程存储库,而不是我现有的远程存储库。

建议?

任何单独“跟踪”每个目录的解决方案都需要每个目录都是它们自己的存储库。然后,例如,您可以使用子模块创建仅引用三个单独存储库的父根存储库。但是除非你真的需要将 A/B/C 组合在一起,否则不需要父存储库(你可以只使用单独的存储库)。

所以任何解决方案都需要您能够访问新的远程存储库。否则,由于 Git 始终跟踪完整内容,因此每次提交都跨越所有子目录。