我们正在开发一些软件,使用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.
从这个我真的不知道,哪些对象实际上是松散的。
1条答案
按热度按时间jgwigjjp1#
尝试使用此代码