将Git Repo移动到自身的子模块

时间:2016-04-15 22:08:27

标签: git git-submodules

我已将(gui)库repo克隆到本地仓库中,现在发现我认为更好的结构是将其作为子模块,我的主代码位于父目录/ repo中。

将当前存在于repo中的文件移动到子模块仓库的最佳方法是什么?或者也许我应该添加一个回购作为父母? (使用新名称保留现有名称和子模块)。

现在:

  • library Repo(Repo1)

后:

  • 我的代码(Repo1)

    • 图书馆回购(Repo1-Submodule1)

这是一个简单的例子,我目前在回购中没有自定义代码。所以当前生活在其中的一切都需要移动(或成为父级回购的孩子)。

1 个答案:

答案 0 :(得分:0)

正确的设置将是:

My Code in (Repo2)
    Library Repo in (Repo1-Submodule1)

含义:

  • 你将图书馆回购保持在Repo1不变的地方。
  • 为代码创建第二个回购。
  • 您在Repo1。{/ li>中添加Repo2作为子模块

那是:

cd Repo2
git submodule add -- /url/to/Repo1

(这里你将使用Repo1的url,而不是最初克隆的本地路径)