我已经运行Jenkins大约一年了,它构建主分支、rc*和生产分支。每次提交时,它执行git clone,执行bundle install,运行migration等操作。它一直完美地工作着。最近,它一直失败并且我得到了以下的回溯(traceback):
FATAL: Error computing merge base
hudson.plugins.git.GitException: Error computing merge base
at hudson.plugins.git.util.GitUtils.filterTipBranches(GitUtils.java:149)
at hudson.plugins.git.util.DefaultBuildChooser.getAdvancedCandidateRevisions(DefaultBuildChooser.java:201)
at hudson.plugins.git.util.DefaultBuildChooser.getCandidateRevisions(DefaultBuildChooser.java:46)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1057)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:948)
at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2417)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:679)
以下内容即刻显示:
Caused by: org.eclipse.jgit.errors.MissingObjectException: Missing commit 2faf546491565d033b1e0a79bef4b2d107447f49
at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:149)
at org.eclipse.jgit.revwalk.RevWalk.getCachedBytes(RevWalk.java:853)
at org.eclipse.jgit.revwalk.RevCommit.parseHeaders(RevCommit.java:142)
at org.eclipse.jgit.revwalk.MergeBaseGenerator.next(MergeBaseGenerator.java:148)
at org.eclipse.jgit.revwalk.StartGenerator.next(StartGenerator.java:102)
at org.eclipse.jgit.revwalk.RevWalk.next(RevWalk.java:414)
at hudson.plugins.git.util.GitUtils.filterTipBranches(GitUtils.java:127)
... 14 more
这个提交错误很困惑,因为所有分支都包含它。
"计算合并基础时出错"是什么意思?为什么我会收到缺少提交信息的消息?
如果有任何见解,请不吝赐教。
谢谢。
git fsck:
Checking object directories: 100% (256/256), done.
Checking objects: 100% (3203/3203), done.
在我的Jenkins配置中,我的git插件配置如下:
- 在构建之前清空工作区
- 使用浅克隆
我正在使用Jenkins版本1.528。
git fsck
是否有任何奇怪的输出?另外,请手动验证您的远程是否正确。另一件事是在拉取之前设置 Jenkins 清理工作区(即放弃所有本地更改)。该项目配置中有一个设置可用于此。 - rlegendi