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

时间:2015-04-14 14:20:27

标签: git git-submodules

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

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

  • root(远程git存储库X)
    • 目录
    • B目录
    • C目录

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

我想要的是如下转换我当前的git存储库:

  • root(远程git存储库X)
    • A(X中的远程git存储库)
    • B(X内的远程git存储库)
    • C(X中的远程git存储库)

现在我读到了关于子模块但是到目前为止,我已经了解了子模块,我将不得不使用不同的远程存储库而不是现有的远程存储库。

建议?

1 个答案:

答案 0 :(得分:-1)

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

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