3
这里是我遇到的情况。 我有一个包含子模块的仓库。在回购协议中,我创建了一个新分支来进行一些编辑。切换分支时git是否更改子模块参考
然后我发现我需要一个更新的子模块,所以我拉下子模块并继续工作。 之后我做了一个提交,并将分支合并回主分支。
在主分支,当我使用“混帐子模块更新”,子模块点回到旧的版本,而不是更新的一个分支:(
我想知道如果混帐合并子模块参考?谁能帮我
这里是我遇到的情况。 我有一个包含子模块的仓库。在回购协议中,我创建了一个新分支来进行一些编辑。切换分支时git是否更改子模块参考
然后我发现我需要一个更新的子模块,所以我拉下子模块并继续工作。 之后我做了一个提交,并将分支合并回主分支。
在主分支,当我使用“混帐子模块更新”,子模块点回到旧的版本,而不是更新的一个分支:(
我想知道如果混帐合并子模块参考?谁能帮我
在您的分支,拉子模“xxx
”后,你需要回到父回购(其中包含你的子模块的文件夹中),并办?答:
git add xxx
git commit -m "Updated submodule"
这将记录更新的special entry of the index记住子模块'xxx
'的新SHA1。
这就是当你将分支合并回master
时需要更新的特殊条目。
如果您忘记了分支中的git add/git commit
步骤,合并回master
会使特殊条目保持不变,仍旧指的是旧的SHA1。
我添加了赏金,因为我有与OP相同的问题 - 但是我*已*添加并提交了原始分支中的子模块。它并未显示在我合并的分支中。 –
@SteveFallows“它不显示”意思是“子模块不显示”?或者子模块在那里,但其带有拉动SHA1的更新内容不显示? – VonC
后者 - 在合并之前,它仍然是原始版本的SHA1,而不是我在其他分支中提交的更新版本。在项目中还有其他的子模块可以完成 - 不知道我在这里弄脏了什么。 –