如何防止Git存储库超过最大大小?

如何防止Git存储库超过最大大小?,git,Git,有一个存储库,您需要在其中控制其大小,并在超出限制的情况下阻止任何更改。如何实现这一点?.git/hooks/pre-receive #/bin/bash #大小限制2(Gb) sizelimit_gb=2 reposize_kb=`git count objects-v | grep'size pack'| sed's/*\(size pack:\)。/'` 让reposize_b=$reposize_kb*1024 设sizelimit_b=$sizelimit_gb*1024*1024*1

有一个存储库,您需要在其中控制其大小,并在超出限制的情况下阻止任何更改。如何实现这一点?

.git/hooks/pre-receive

#/bin/bash
#大小限制2(Gb)
sizelimit_gb=2
reposize_kb=`git count objects-v | grep'size pack'| sed's/*\(size pack:\)。/'`
让reposize_b=$reposize_kb*1024
设sizelimit_b=$sizelimit_gb*1024*1024*1024
如果[$reposize_b-gt$sizelimit_b];然后
echo“错误:存储库大小>$sizelimit\u gb”
出口1
#否则

#回音“如果你达到了临界点和障碍,那么你的开发工作将如何继续?我认为一个更好的方法是确保在repo中保留真正大而坏的内容,例如大的二进制文件。任务是故意限制git存储库的大小。不是通过阻塞来解决问题,你已经看过git虚拟文件系统了吗?这使得巨大的存储库能够完美地工作。您可以使用钩子来检查跟踪文件的组合大小。还请注意,“存储库的大小”是一件很挑剔的事情,因为垃圾收集和打包也会使其下降。例如,在增长到/超过目标大小后,如果我强制向后推一个分支以消除提交,或者删除一些分支,该怎么办?那么您是否应该再次允许更改?