如何才能git最佳地拉动服务器?

时间:2018-07-09 10:29:29

标签: git git-pull

两天后,我试图将我的项目(在git上)拉到服务器上。我的服务器有1GB内存,并使用Ubuntu OS。 (其他进程通常使用200mb RAM)

当我在服务器上运行git pull origin master时,它将引发以下情况:

  

致命:内存不足,malloc失败(试图分配533517295字节)

     

致命:索引包失败

enter image description here

这也是nano .git/config的结果:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    packedGitLimit = 512m
    packedGitWindowSize = 512m

[remote "origin"]
    url = https://***@bitbucket.org/***/***.g$
    fetch = +refs/heads/*:refs/remotes/origin/*

[pack]
  threads = 1
  deltaCacheSize = 512m
  packSizeLimit = 512m
  windowMemory = 512m

老实说,我无法为服务器获得更多的RAM。知道如何将项目拉到服务器上吗?

请注意,实际上是真实姓名而不是***

1 个答案:

答案 0 :(得分:1)

要限制在获取操作期间使用的内存量(git pull使用git fetch),可以使用--depth标志。

只需运行git pull --depth=10并增加数量即可获取越来越多的历史记录(如果您还用完了内存,则减少历史记录)。在历史记录中加载了足够多的对象后,您可以使用git fetch --unshallow

请求其余对象

深度拉动的缺点是您的存储库将占用更多磁盘空间,因为它还必须考虑到回购的多种状态