有没有办法在分支是新的但没有任何更改的情况下切换git的子模块的分支

时间:2019-09-28 13:34:38

标签: git branch git-submodules

使用git的子模块对我来说有些问题。

第一步:进入子模块目录checkout new-b; push --set-upstream origin new-b;

第二步:cd parent dir; git config -f .gitmodule submodule.<submodule-name>.branch new-b;

第三步:在父目录exec : git add .; git commit -m"xxx"; git push;

第四步:cd tmp; git clone parent-dir; cd parent-dir; git submodule update --init; git submodule update --remote;

第五步:git submodule status;

状态结果表明子模块仍在原始分支中。

在对子模块进行一些新的提交之后,将提取分支new-b,直到执行“ submodule update --remote”为止。并且父目录中处于状态的分支仍然是原始分支。(仅将新分支提取到本地)

更改父目录中子模块配置的唯一方法是:

1 cd sub; git checkout -b new-b;

更改某些内容,例如,编辑README.md;

git commit -m "edited" -a

git push --set-upstream origin new-b

2 cd parent;

git config -f .gitmodules submodule.sub.branch new-b

git add .gitmodules sub

git commit -m"switch branch"

git push

然后检查sub的分支是否在父级中更改

git clone parent

cd parent

git submodule update --init

git submodule status

那么在分支是新的但没有任何更改的情况下,有没有办法切换git的子模块的分支?

0 个答案:

没有答案