【发布时间】:2018-02-14 06:05:24
【问题描述】:
我正在一个新节点上运行 Jenkins 作业。无论我是克隆存储库还是从另一个工作节点复制它,我都会得到:
$ git diff --name-only 27b9a8a4b0269d3796defe00ff56eb835fd3d84b HEAD
fatal: bad object 27b9a8a4b0269d3796defe00ff56eb835fd3d84b
$
按照 StackOverflow 上的其他答案(其中大部分是关于“bad object HEAD”而不是我的情况“bad object $hash HEAD”),我尝试过:
$ git fsck --full
Checking object directories: 100% (256/256), done.
Checking objects: 100% (213374/213374), done.
$ git status
HEAD detached at b08bd7495
nothing to commit, working tree clean
$ git log --raw --all | fgrep 27b9a8a4b
$
哈希 27b9a8a4b... 不会出现在 git log 的输出中。
有什么建议吗?
【问题讨论】:
-
我不确定到底是什么问题,但我确信这是 Jenkins 的问题,而不是 Git 的问题。更准确地说,您的 Jenkins 已经锁定了一些实际上不存在的哈希 ID。不知何故,你需要促使 Jenkins 获得一个好的哈希 ID,无论对 Jenkins 来说“好”是什么,并停止传递这个错误的 ID。
标签: git