我有一个奇怪的问题,我无法解决。詹金斯(Jenkins)正在回购中构建。
它签出应用程序的当前提交(这是正确的),然后初始化子模块(也是正确的,并找到正确的提交)。
但是当它尝试执行git子模块更新时--init --recursive回购
它具有以下优点: app / views / license / edit.html:需要合并
问题是,没有冲突,并且当前commit src中的文件完全正确...
我只是不知道从这里去哪里。
> git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
> git config remote.origin.url git@bitbucket.org:TEAM/api-backend.git # timeout=10
Fetching upstream changes from git@bitbucket.org:TEAM/api-backend.git
> git --version # timeout=10
using GIT_SSH to set credentials
> git fetch --tags --progress git@bitbucket.org:TEAM/api-backend.git +refs/heads/*:refs/remotes/origin/*
> git rev-parse refs/remotes/origin/dev^{commit} # timeout=10
> git rev-parse refs/remotes/origin/refs/heads/dev^{commit} # timeout=10
Checking out Revision 99ab7742966fd82f21044e7bf5f405eaf3bd085b (refs/remotes/origin/dev)
> git config core.sparsecheckout # timeout=10
> git checkout -f 99ab7742966fd82f21044e7bf5f405eaf3bd085b
Commit message: "Front-end update"
> git rev-list --no-walk 99ab7742966fd82f21044e7bf5f405eaf3bd085b # timeout=10
> git remote # timeout=10
> git submodule init # timeout=10
> git submodule sync # timeout=10
> git config --get remote.origin.url # timeout=10
> git submodule init # timeout=10
> git config -f .gitmodules --get-regexp ^submodule\.(.+)\.url # timeout=10
> git config --get submodule.compose/web.url # timeout=10
> git config -f .gitmodules --get submodule.compose/web.path # timeout=10
> git submodule update --init --recursive compose/web
hudson.plugins.git.GitException: Command "git submodule update --init --recursive compose/web" returned status code 1:
stdout: app/views/license/edit.html: needs merge
stderr: error: you need to resolve your current index first
Unable to checkout '71e9f5f5d30ec8b2bcd7d341e4b607ab123a4ece' in submodule path 'compose/web'
我尝试了对有关文件进行一些更改的虚拟提交,并将其合并到dev分支,但这并不能解决问题...
让我感到困惑的是,为什么合并时它不告诉我存在冲突?
我做了父仓库的新克隆。并运行git子模块--init --recursive compose / web
它成功克隆并检出了正确的分支...
所以我什至不能在本地复制它。
有什么想法吗?
答案 0 :(得分:0)
看起来您有合并冲突。试试:
git mergetool app/views/license/edit.html
答案 1 :(得分:0)
如所评论,问题出在Jenkins工作空间级别。
如果从头开始构建作业(空工作区),问题就消失了。
答案 2 :(得分:0)
错误:您需要先解决当前索引
git reset --merge 或 git merge --abort 如果您已经接受当前或传入的更改到您的文件将不起作用。只需按照以下步骤
现在您可以结帐或合并其他分支。