我们应该多久使用一次git-gc?
时间:2020-03-05 18:51:12 来源:igfitidea点击:
我们应该多久使用一次git-gc?
手册页只说:
Users are encouraged to run this task on a regular basis within each repository to maintain good disk space utilization and good operating performance.
是否有一些命令来获取一些对象计数,以确定是否是时候进行gc?
解决方案
回答
这主要取决于使用多少存储库。一个用户每天检查一次,而分支/合并/等操作每周检查一次,我们可能不需要每年运行一次以上。
数十名开发人员从事数十个项目,每个项目每天要检查2-3次,因此我们可能希望每晚运行一次。
不过,频繁运行它并不会造成伤害。
我要做的就是现在运行它,然后从现在开始的一周内测量磁盘利用率,再次运行,然后再次测量磁盘利用率。如果大小减少5%,则每周运行一次。如果下降幅度更大,则应更频繁地运行它。如果其下降幅度较小,则应减少运行频率。
回答
将其放入每天晚上(下午?)运行的定时工作中。
回答
我在进行大量结帐后使用了git gc,并且有很多新对象。它可以节省空间。例如。如果我们使用git-svn签出一个大型SVN项目并执行git gc,通常可以节省很多空间
回答
git的最新版本会在需要时自动运行gc,因此我们无需执行任何操作。请参阅man git-gc(1)的"选项"部分:"某些git命令在执行可能会创建许多松散对象的操作后运行git gc --auto。"
回答
请注意,垃圾收集存储库的不利之处在于,垃圾被收集了。众所周知,作为计算机用户,我们现在认为是垃圾的文件将来三天之内可能会变得非常有价值。 git保留了大部分碎片的事实通过浏览所有悬空的提交多次节省了我的培根,我已经恢复了很多我偶然罐装的工作。
因此,在私人克隆中不要有太多整洁的怪胎。几乎不需要它。
OTOH,对于主要用作遥控器的回购协议,数据可恢复性的价值值得怀疑。所有开发人员推动和/或者撤离的地方。在那里开始频繁运行GC和重新包装可能是明智的。