如何在分离的头上更新子模块?
我试试
git pull --recurse-submodules
git submodule update --init --recursive
但是我收到了错误:
You are not currently on a branch. Please specify which
branch you want to merge with. See git-pull(1) for details.
git pull <remote> <branch>
我该怎么办?在分离的头上有更新子模块的另一种方法吗?用例是jenkins尝试更新分离头上的子模块。
答案 0 :(得分:0)
你到底想要完成什么?子模块处于分离头模式是完全正常的。只要它指向子模块的正确提交,它就不应该是Jenkins的问题。
您为什么使用recursive
?子模块是否有自己的子模块?
如果你想要的是Jenkins检查所有存储库(主存储库及其子模块)的正确提交,那么一个简单的git submodule update
就可以了。顺便说一句,詹金斯知道如何为你做这件事,没有理由你自己或任何事情输入这个命令。
如果你希望Jenkins实际上更改子存储器在主存储库中记录的提交,那么它们指向某个分支的尖端,那么这是一个非常奇怪的事情在Jenkins做...通常你不会在Jenkins中进行代码更改。