我有一个简单的备份系统,其中使用--bare
创建的git克隆(可能是--mirror
)每小时运行git fetch
。我的想法是,如果我的工作副本发生了某些事情,我会在克隆中备份我的工作。
这个系统效果很好,但是当我运行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 <russell.silva@blahblah.com>
Date: Wed Feb 29 10:19:26 2012
WIP on experimental: 808f6e4 blah blah blah
看起来fetch大部分都是成功的; 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)