我在服务器上使用gitlab主机。 在服务器上,一个存储库的包文件大小为500MB,但当我将其克隆到本地时,我发现本地包文件大小为250MB。这是一个问题吗?
答案 0 :(得分:1)
这不一定是个问题。您可以使用git cat-file
作为shown here来比较树木的细节。
答案 1 :(得分:1)
一个服务器,一个存储库的包文件大小为500MB,但当我将其克隆到本地时,我发现本地包文件大小为250MB。这是一个问题吗?
远程服务器和本地服务器上的包大小可能不同 它根本不是问题,但如果你有大包文件,你的存储库性能将受到影响。
每次git提交代码时,它也应该添加到包中。 Git将数据存储在2个主文件中。 .pack
&& .idx
。包文件是存储库的内容,而索引是在内容与文件名之间进行映射。
如果你在.git/objects/pack
下查看,你可能会看到几个包文件
在这种情况下,你应该"告诉" git使用:
git gc --aggressive --prune=now
此命令将重新打包存储库的内容,并使用--prune=now
的选项,它将超级"优化存储库大小。
--prune=<date>
修剪早于日期的松散对象(默认为2周前,可由配置变量gc.pruneExpire覆盖)。 --prune =所有西梅松散的物品,不论其年龄。 --prune默认开启。