git 在存储库中查找无法访问的松散对象

3xiyfsfu  于 2023-04-04  发布在  Git
关注(0)|答案(1)|浏览(116)

我们正在开发一些软件,使用libgit 2,它会自动将一些数据存储在git存储库中。它经常这样做。为了保持性能,软件也经常运行git gc --auto。现在我们得到了消息
错误:上次运行gc时报告了以下内容。请更正根本原因并删除. git/gc.log。在删除该文件之前,不会执行自动清理。
警告:有太多无法触及的松散物体;运行'git prune'删除它们。
当然,我可以直接进入存储库运行git prune并远程运行gc.log,或者我可以让软件执行git gc --prune=all
但是我猜软件正在创建一些不需要的git对象。我如何检查仓库中有多少对象和哪些对象是不可访问的?
编辑:使用git fsck,我得到:

$ git fsck --unreachable
Checking object directories: 100% (256/256), done.
Checking objects: 100% (7568/7568), done.
Checking connectivity: 13781, done.

从这个我真的不知道,哪些对象实际上是松散的。

jgwigjjp

jgwigjjp1#

git fsck --unreachable --no-reflogs

尝试使用此代码

相关问题