Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何处理大型git存储库_Git_Version Control_Jenkins - Fatal编程技术网

如何处理大型git存储库

如何处理大型git存储库,git,version-control,jenkins,Git,Version Control,Jenkins,我们完全不知道如何解决这个问题。 问题是,我们的回购规模为2.56吉布。主要问题是在克隆存储库时git服务器的RAM使用情况:服务器将打包repo,一段时间后,连接将断开(或者发生其他阻止克隆的情况!)。服务器上的其他服务(另一个git repo和一个jenkins)将交换,不再可用 以下是有关我们回购的一些信息: git计数对象-vH表示{1} 应用程序中的一个框架(仅此一个)就有350 MB 另一个框架大约有150MB 有更多的框架,但规模较小 一个*.pack,大小为2.75 GB 大

我们完全不知道如何解决这个问题。 问题是,我们的回购规模为2.56吉布。主要问题是在克隆存储库时git服务器的RAM使用情况:服务器将打包repo,一段时间后,连接将断开(或者发生其他阻止克隆的情况!)。服务器上的其他服务(另一个git repo和一个jenkins)将交换,不再可用

以下是有关我们回购的一些信息:

  • git计数对象-vH表示{1}
  • 应用程序中的一个框架(仅此一个)就有350 MB
  • 另一个框架大约有150MB
  • 有更多的框架,但规模较小
  • 一个*.pack,大小为2.75 GB
大型框架更新了2-3次。所以我们认为(我们不是真正的git大师:))历史包含了伟大框架的旧版本

我们已经看了一遍又一遍。但是布斯,当我们正确理解它时,并不能解决我们的问题

我们不能删除一个大框架,因为我们需要它来开发。当我们从历史记录中删除它时,我们无法再签出到旧版本

我们已经尝试将大型框架转移到单独的git回购中。但这并不能解决问题,因为我们的历史对他们来说意义重大

那么,我们如何在不失去历史的情况下解决我们的问题呢

{1}

***编辑***

这是我的输出,当我说:

git克隆

当我创建一个
git init
并设置如下()的配置时:

我的输出是:

remote: Counting objects: 23942, done.
remote: warning: suboptimal pack - out of memory

2.6G不是特别大。您是否禁用了自动gc?您使用的是什么版本的git?旧版本存在二进制资产的增量压缩问题,并表现出类似的症状。请参阅。如何禁用自动gc?这里没有任何变化。使用默认值。。。但是为什么它会有帮助呢?@GregBacon我们的git客户端使用git版本1.9.3(Apple git-50)。。。
remote: Counting objects: 23942, done.
remote: warning: suboptimal pack - out of memory
remote: fatal: Out of memory, malloc failed
remote: aborting due to possible repository corruption on the remote side.
fatal: protocol error: bad pack header
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = true
    packedGitLimit = 128m
    packedGitWindowSize = 128m
[pack]
    deltaCacheSize = 128m
    packSizeLimit = 128m
    windowMemory = 128m 
remote: Counting objects: 23942, done.
remote: warning: suboptimal pack - out of memory