git early EOF, index-pack failed 에러 처리

git을 오랜기간 사용하고, 파일도 방대해지게 되면, 프로젝트 clone시 아래와 같은 에러메시지를 마주 할 경우가 생긴다.

$ git clone url 
Cloning into 'remote_project'...
remote : Counting object: 1234567, done.
remote : Compressing object : 100%(1234567/1234567), done.
fatal : read error : Invalid argument, 411.01MiB | 2.00 MiB/s
fatal : early EOF
fatal : index-pack failed

프로젝트 clone 간 너무 많은 데이터를 가져오게 되면서 메모리 부족 or 용량 부족 등의 상황에서 발생하게 된다.

  • 가장 우선적으로 git 최신 버전으로 업데이트(현재 v2.20.1)
  • 메모리 부족
    - 아래의 코드와 같이 .gitconfig에 추가
.gitconfig 파일[core]
packedGitLimit = 512m
packedGitWindowSize = 512m
[pack]
deltaCacheSize = 2047m
packSizeLimit = 2047m
windowMemory = 2047m
  • 용량부족
    - 해당 드라이브 용량을 확인하고 추가적으로 늘려 줌.
  • 해결 방법을 찾다 보면 아래와 같은 방법이 있다.
1. git config --global core.compression 0
2. git clone --depth 1 [repo_url]
3. git fetch --unshallow
or
3. git fetch --depth=2147483647
4. git pull --all

이 경우 pull 을 할때 Git refusing to merge unrelated histories 와 같은 에러 문구가 발생 하는 것을 확인 할 수 있을 것이다.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store