git fetch“无法找到”“object ... not found”存储错误
问题描述:
我有一个简单的备份系统,其中使用--bare
(它可能是--mirror
)每小时运行git fetch
创建的git克隆。这个想法是,如果我的工作副本发生某些事情,那么我可以在克隆中备份我的工作。git fetch“无法找到”“object ... not found”存储错误
该系统的伟大工程,但是当我运行git fetch
我得到一个错误:
$ git fetch
remote: Total 0 (delta 0), reused 0 (delta 0)
error: unable to find 2a8c978c41c362c3f0c42775c9124780a0e71e08
fatal: object 2a8c978c41c362c3f0c42775c9124780a0e71e08 not found
当我看到在该对象的原始资料库,这是一个藏匿处:
$ git show 2a8c978c41
commit 2a8c978c41c362c3f0c42775c9124780a0e71e08
Merge: 808f6e4 ddc28da
Author: Russell Silva <[email protected]>
Date: Wed Feb 29 10:19:26 2012
WIP on experimental: 808f6e4 blah blah blah
它看起来像获取大部分是成功的; git log <branch>
显示最新的分支机构。但错误是讨厌的。我如何摆脱它们?我如何防止它们再次发生?
请注意,这个问题不同于this one,某人实际上想要取回藏匿物。我不在乎是否我的git fetch
命令获取包装;如果他们不这样,那很好。
编辑:请求的git fetch --verbose
全力输出:
$ git fetch --verbose
remote: Total 0 (delta 0), reused 0 (delta 0)
From /home/russell/work/russells-project
= [up to date] some-branch -> some-branch
error: unable to find 2a8c978c41c362c3f0c42775c9124780a0e71e08
fatal: object 2a8c978c41c362c3f0c42775c9124780a0e71e08 not found
我已经在输出改变名称来掩盖私人信息,并消除所有,但的“[最新]”行一个 - 有数十个,一个用于存储库中的每个分支。
此外,我的远程是在本地文件系统;它不通过网络访问。
$ git remote --verbose
origin /home/russell/work/russells-project (fetch)
origin /home/russell/work/russells-project (push)
它总是* *失败时,有一个藏匿?也许'git fetch'的详细输出会有所帮助,这很奇怪 – CharlesB 2012-04-03 15:29:16
@CharlesB:我不确定它是否总是失败,我不得不做更广泛的测试。提供的'git fetch'输出是命令的总输出。 – 2012-04-03 16:49:24
你可以有'git fetch --verbose'更详细的输出 – CharlesB 2012-04-04 09:04:06