Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Git pull fails with bad pack header error

Tags:

git

git pull fails with following error

remote: Counting objects: 146, done. remote: fatal: unable to create thread: Resource temporarily unavailable error: git upload-pack: git-pack-objects died with error. fatal: git upload-pack: aborting due to possible repository corruption on the remote side. remote: aborting due to possible repository corruption on the remote side. fatal: protocol error: bad pack header 

Any Ideas how to pull successfully ?

like image 935
deimus Avatar asked Sep 09 '11 13:09

deimus


1 Answers

The lines beginning with remote are output from git running on the remote system. The error:

fatal: unable to create thread: Resource temporarily unavailable 

... strongly suggests that you've run out of memory on the server, which can happen if you have either:

  1. A repository with lots of large files, which can cause re-packing to take a lot of memory.
  2. Limited virtual memory - either in general, or just for that account due to the ulimit setting

A suggestion here is to limit the amount of memory that packing may take by logging into the remote system (as the user that git runs as) and doing:

git config --global pack.windowMemory "100m" git config --global pack.packSizeLimit "100m" git config --global pack.threads "1"  
like image 156
Mark Longair Avatar answered Sep 22 '22 12:09

Mark Longair