具有多个子模块的单个项目

时间:2012-09-29 18:59:17

标签: git git-submodules

我有一个项目,我想从我的服务器中再提取两个存储库。我遇到了一个问题,其中一个子模块从两个存储库中提取代码。

一个子模块需要在

之内
/projectroot/application/models

另一个

/projectroot/library/NameSpace

这就是我的所作所为:

cd projectroot
git submodule add ssh://user@xx.xx.xxx.xx:/var/repositories/models.git application/models

这非常有用;我的应用程序/模型包含它需要的东西。所以我转到下一个:

git submodule add ssh://user@xx.xx.xxx.xx:/var/repositories/NameSpace.git library/NameSpace

我看看

/projectroot/library/NameSpace

我有来自两个存储库的所有文件。 我可能还应该注意到

git submodule

正确列出了按预期添加的两个子模块。

我错过了一些关键的东西吗?这是我在初始化各个存储库时做错了吗?我现在尝试过这个过程〜3次。

感谢。

2 个答案:

答案 0 :(得分:0)

您可能正在通过

更新所有子模块

git submodule update

如果您只想更新一个子模块,则需要cd进入该子模块的目录,然后运行

git pull

那里。然后,从项目根提交更改集哈希值。

答案 1 :(得分:0)

不确定这是否可以被视为答案,但我设法通过重新克隆整个项目(在添加子模块之前)来修复它。然后我尝试再次添加子模块,它起作用了。

沿着Git /其他地方的某个地方感到困惑。

非常感谢。