什么是" git pack-redundant -all"实际上在做什么?

时间:2016-10-25 18:52:33

标签: git

pack-redundant的文档没有关于哪个包实际上意味着多余的信息。此外,它还建议仅删除包含无法访问的对象的包。

我是否可以从存储库中删除所有冗余包,是否安全?实际上没有任何信息。我们的存储库大约300GB磁盘,冗余包大约150GB。那么,这就是我问这个问题的原因。如果我删除一些必需的包,它将不是很好。

1 个答案:

答案 0 :(得分:0)

git pack-redundant的手册页

  

如果您位于存储库的根目录中,则输出适用于管道xargs rm

确实建议的输出列表文件。我刚跑了

~ git pack-redundant --all | xargs rm

在我拥有的存储库(大小与您的相似),git fsck之后似乎很高兴。

我认为您可以在同一台计算机上进行克隆,保留新存储库并在旧计算机上测试上述命令。我认为git clone在克隆本地存储库时会做硬链接(即使用文件路径,指定localhost:stuff不起作用),因此克隆不应占用更多空间。