0

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

  1. 克隆带有子模块的远程裸仓库。
  2. 在这个 repo 中初始化和更新子模块。这里的一切都很酷。
  3. 通过克隆非裸本地存储库来创建本地裸存储库。(我说的是复杂的,对吧?)
  4. rsync 这个 repo 到机器 X(它无权访问原始远程)
  5. 在机器 X 上对 rsync 的 repo 进行非裸克隆。
  6. 尝试初始化和更新新仓库中的子模块。

第六步的结果:

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

超级项目目录被克隆到 /some/dir/project/。

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

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

谢谢。

4

1 回答 1

1

.gitmodules与其说是实际规则,不如说是您所谓的“准则”。

我的第一次尝试是

  • 还将子模块 repos 同步到 step-4 机器,以及
  • 在第 6 步 repo 中,对于每个子模块,
    • git config submodule.modulename.url url://step-4/path/to/subrepo
  • 重试子模块更新
于 2013-10-09T00:10:41.103 回答