无法从rsync'd repo克隆的裸存储库初始化子模块

时间:2013-10-08 15:55:18

标签: git rsync git-submodules

在设置存储库的复杂过程后,我在初始化子模块时遇到问题:

  1. 使用子模块克隆远程裸存储库。
  2. 初始化并更新此仓库中的子模块。这里的一切都很酷。
  3. 通过克隆非裸本地仓库来创建本地裸仓库。 (我说复杂,对吗?)
  4. rsync这个repo到机器X(它没有访问原始遥控器)
  5. 在机器X上创建一个非裸克隆的rsync'd repo。
  6. 尝试初始化和更新新仓库上的子模块。
  7. 第六步的结果:

    fatal: repository '/some/dir/foo.git' does not exist
    

    将超级项目目录克隆到/ some / dir / project /.

    这个过程非常复杂,因为:由于网络限制,第1步非常慢,而且机器X无法访问原始存储库。

    因此,在这些限制条件下(我可以重新执行第1步,如果有必要,可能会立即创建一个本地裸存储库)是否可以实现我在这里尝试做的事情?

    感谢。

1 个答案:

答案 0 :(得分:1)

.gitmodules比实际规则更像是你所谓的“指南”。

我的第一次尝试是

  • 还将子模块存储器与步骤4机器进行rsync,并
  • 步骤6回购中的
  • ,对于每个子模块,
    • git config submodule.modulename.url url://step-4/path/to/subrepo
  • 重试子模块更新