【问题标题】:Git repository size and git push sizeGit 存储库大小和 git push 大小
【发布时间】:2011-11-07 06:32:37
【问题描述】:

我们为 Git 存储库(将作为远程存储库在云端)设置了配额限制。我们必须将存储库的大小限制在此限制内。

为此,我试图在远程存储库的预接收挂钩中获取“git push”的大小。如果我得到推送的大小,我会将当前 git repo 的大小与此推送的大小相加,以找出推送后的总存储库大小。然后,我可以限制推送,如果总大小超过配额或接受推送,如果大小不超过配额。

基本上,我需要在 pre hook 中计算 git 远程存储库的大小和 git push 的大小。

【问题讨论】:

  • 你有拒绝推送后的行动计划吗? git rm 不会从对象中删除大文件,只会从文件系统中删除,因此下一次推送正在尝试再次推送它们。

标签: git size push


【解决方案1】:

实现这一点的最可靠方法是:

  • 推送到本地仓库
  • 在推送后检查本地仓库的大小
  • 如果大小符合您的限制,然后推送到远程仓库。

【讨论】:

  • 假设 A 公司在云中托管一个 git repo,配额为 1 GB。用户 B 在此云中创建一个 git 存储库并将其克隆到他的本地计算机中。工作结束后,B 将他的更改推送到云中的远程仓库。 A 公司想要验证存储库配额。如果用户通过这次推送还没有达到配额,那很好。否则,该推送应被公司拒绝。在这种情况下,公司将如何访问用户的本地 repo?
  • @Mani:你能不能在云上再创建一个临时repo,B可以推送到,A可以克隆,检查大小,推送到A官方repo?
猜你喜欢
  • 2011-01-08
  • 2011-03-14
  • 2012-01-01
  • 2020-02-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-23
  • 2011-11-01
  • 1970-01-01
相关资源
最近更新 更多