为什么是git clone --recursive cloning detached子模块

时间:2014-03-25 11:50:26

标签: git

我使用以下(注意-b开关)为我的git repo添加了一些子模块:

git submodule add -b dev-master git@github.com:OurCompany/The_Submodule.git

并以

递归克隆模块
git clone --recursive -b dev-master git@github.com:OurCompany/The_Repository.git

子模块被克隆,但正在运行

git branch

表示子模块处于分离状态。

我可以通过用

签出子模块来修复
git checkout dev-master

但是我没有办法在我在 git子模块添加步骤中添加的跟踪 dev-master 分支上检出的子模块进行递归克隆,而不是给我一个独立的分支?

1 个答案:

答案 0 :(得分:0)

父项目不跟踪标记(即masterdev-master)。它只会固定每个子模块的sha1-id。

如果你现在想要让所有子模块都指向当前的master(可能不是你想要的那个),你可以运行:

git submodule foreach git checkout dev-master