更改为远程后,重新建立git的子模块跟踪分支

时间:2019-04-04 14:24:54

标签: git git-submodules

我有一个包含4个子模块的项目,如下所示:

$ cat .gitmodules 
[submodule "/submodules/sub1"]
    path = /submodules/sub1
    url = git@my-gitlab-server:namespace/sub1.git
[submodule "/submodules/sub2"]
    path = /submodules/sub2
    url = git@my-gitlab-server:namespace/sub2.git
[submodule "/submodules/sub3"]
    path = /submodules/sub3
    url = git@my-gitlab-server:namespace/sub3.git
[submodule "/submodules/sub4"]
    path = /submodules/sub4
    url = git@my-gitlab-server:namespace/sub4.git

当我第一次克隆我的项目时,似乎对于sub2,是远程跟踪分支(也许项目的默认值为master)。

我被告知这已更改为develop

所以现在我有这个问题:

$ git submodule update --remote
fatal: Needed a single revision
Unable to find current origin/master revision in submodule path '/submodules/sub2'

我该如何补救?

1 个答案:

答案 0 :(得分:0)

最终将特定分支(即更改后的新默认分支)设置为.git/config

[submodule "submodules/sub2"]
    url = git@my-gitlab-server:namespace/sub2.git
    active = true
    branch = develop
相关问题