在一个大型仓库中,我最近运行了以下命令:
git rev-list --objects <my_rev_list> RevListOut.txt
echo -e "<my_rev_list>" | git pack-objects --revs /tmp/XXX
git verify-pack -v /tmp/XXX-b569475c51d937df848abbcfe16433e2f8ebc0f5.pack > Unpack.txt
当我比较和中的对象时RevListOut.txt
,Unpack.txt
我发现中恰好有两个对象Unpack.txt
在中不存在RevListOut.txt
,它们具有以下shas:
380a0876f57a4708b4a73a29d2ace2d4506880a2
2000687bd2701ff5c7c37013178d15384f0deefa
我做了进一步调查,发现这两个对象都对应于 git 跟踪的文件。
为什么可能会git rev-list --objects
错过一个物体?
检查配置帮助我
并注意那里的最后两句话。