git - 如何在 Git 远程存储库上触发垃圾回收?

标签 git repository git-gc

众所周知,我们可以定期运行 git gc打包 .git/objects 下的对象.

在远程中央 Git 存储库(裸或非裸)的情况下,经过多次推送后,myproj.git/objects 下有许多文件;每次提交似乎都会在那里创建一个新文件。

如何打包那么多文件? (我指的是远程中央裸存储库中的那些,而不是本地克隆存储库中的那些。)

最佳答案

远程仓库应配置为在提交后根据需要运行 gc。请参阅 git-gcgit-config 手册页中的 gc.auto 文档。

然而,远程仓库不应该需要那么多垃圾收集,因为它很少有悬空(无法访问)的提交。这些通常是由分支删除和 rebase 之类的事情引起的,这通常只发生在本地存储库中。

所以重新打包需要更多的gc,这是为了节省存储空间而不是清除实际垃圾。 gc.auto 变量足以处理此问题。

关于git - 如何在 Git 远程存储库上触发垃圾回收?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3162786/

相关文章:

git - 你应该多久使用一次 git-gc?

git - 使用另一个分区进行临时 git 操作 (git gc)

预提交 Hook 期间的 git diff 导致 Not a git repository

android - 更新后,Project.xml 文件会自动在 android studio 中进行编辑和暂存以供提交

git - 如何允许第三方针对我们的 git 树的一部分进行开发?

ruby-on-rails - Git 继续推送 .c9 文件夹,尽管它位于 .gitignore 中

asp.net-mvc - Microsoft MVC 中的服务层和存储库设计

maven - 如何将自己的项目添加到公共(public)maven存储库?

svn 和 git 版本控制模型的区别

Git 存储库太大