我有一个名为'production'的git模块,位于几个子模块中。当我使用以下命令时:git clone --recursive git@git_server:production
它使用子模块克隆'production'模块。当我在其中一个子模块中cd
并给出以下命令时:git branch -a
我得到:
* (no branch)
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
.gitmodules
个文件包含:
[submodule "blabla"]
url = git@git_server:production/blabla
path = blabla
branch = refs/heads/master
...........................................
问题是:为什么我克隆递归子模块在分支“(没有分支)”,如果我只克隆相应的子模块直接克隆在分支“master”上?有没有办法改变配置,当我克隆递归直接克隆分支“master”中的所有子模块?
答案 0 :(得分:1)
为什么我克隆递归,子模块位于分支“(无分支)”
父程序直接检查 gitlink (special entry in the index)
记录的SHA1上的子模块如果您要添加 gitsubmodule update --recursive --remote
(在克隆之后),那么它将继续子模块,获取并更新分支。