考虑一个名为Foo/的git仓库,它有子模块bar1/和bar2/。
每个子模块都有相同的分支:1和2。
我进入了超级模块,并想要从bar1和bar2的源更新超级模块中最新的提交。我已经完成了超级模块的init和update操作,因此bar1和bar2中有工作树,但它们处于分离状态。我可以执行以下操作:
现在,令我困扰的是重复分支标识符。我能否执行类似“git submodule foreach git checkout $CURRENT_BRANCH_ID”的操作?有更好的替代方案吗?
每个子模块都有相同的分支:1和2。
我进入了超级模块,并想要从bar1和bar2的源更新超级模块中最新的提交。我已经完成了超级模块的init和update操作,因此bar1和bar2中有工作树,但它们处于分离状态。我可以执行以下操作:
cd foo;
git checkout 1
git submodule foreach git checkout 1
git pull
现在,令我困扰的是重复分支标识符。我能否执行类似“git submodule foreach git checkout $CURRENT_BRANCH_ID”的操作?有更好的替代方案吗?
HEAD
->远程/分支1指向的引用
。如果您想要HEAD
->本地跟踪分支branch1
->远程/分支1指向的引用
,那么您将不得不执行其他操作。我想不到除了bash脚本之外的其他方法。 - Ari Sweedlergit branch --recurse-submodules
。 - VonC