2015-11-12 80 views
0

如何在分离头上更新子模块?如何更新子模块

我尝试

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

你究竟想完成什么?子模块处于分离头模式是非常好的。只要它指向子模块的正确提交,Jenkins就不会成为问题。

为什么使用recursive?子模块是否有自己的子模块?

如果你想要Jenkins检查所有仓库(主仓库及其子仓库)的正确提交,那么一个简单的git submodule update应该可以做到。顺便说一句,詹金斯知道如何为你做这件事,你没有理由自己或任何类型的命令。

如果你想詹金斯实际上更改子模块记录在主存储库,以便它们指向某个分支的提示,那么这是在詹金斯做一个非常奇怪的事情提交...通常,您不会在Jenkins中进行代码更改。