오늘은 git 을 사용해 github 를 정리 및 개인 사이트를 만들려고 셋업을 했을때 내가 겪었던 문제를 쓰게 되었다.
보통 아시다 싶이 Github 에 repo 를 설정하고, cloning 을 한후 설정했던 directory에 들어가서
git add .
git commint -m "Please update it"
git push
위의 커멘드들을 순서대로 하려고 했다.
그런데 내 상황이 기존에 repo가 있어, 그 repo를 활용해 세로히 업데이트를 하고 싶어서
locald의 VScode로 여럿의 파일들과 폴더들을 바꾸고 위의 셋을 차례대로 하고 있었는데
문제가 생겨버렸다!
Enumerating objects: 3338, done.
Counting objects: 100% (3338/3338), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2640/2640), done.
error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400
send-pack: unexpected disconnect while reading sideband packet
Writing objects: 100% (3338/3338), 33.00 MiB | 50.58 MiB/s, done.
Total 3338 (delta 672), reused 3336 (delta 672), pack-reused 0
fatal: the remote end hung up unexpectedly
Everything up-to-date
위의 문제가 생겨 push 가 되지 않는 상황이 되었다.
위의 상황에 있을때 git push 에서 나오는 오류라고 나왔는데
RPC ERROR... 그리고 HTTP 400.... 오류 여서 일단 구글링을 해보았는데
파일 크기의 초과 문제일수도 하기에
du -sh .git/
이 커멘드를 사용해 repo의 메모리 크기를 확인했는데 약 36.6MB 정도 나왔었다.
그렇게 크다고 생각하진 않았는데 일단 크기를 한번 조정해봐야할것 같아
큰 파일을 제거하려고
git filter-branch --force --index-filter'git rm --cached --ignore-unmatch path/to/large/file'--prune-empty --tag-name-filter cat -- --all
git gc --prune=now --aggressive
이 두개의 커멘드를 사용했는데
그럼에도 같은 에러!
Enumerating objects: 3338, done.
Counting objects: 100% (3338/3338), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2640/2640), done.
error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400
send-pack: unexpected disconnect while reading sideband packet
Writing objects: 100% (3338/3338), 33.00 MiB | 50.58 MiB/s, done.
Total 3338 (delta 672), reused 3336 (delta 672), pack-reused 0
fatal: the remote end hung up unexpectedly
Everything up-to-date
같은 문제가 나왔다... 그래서 또 찾아 봤는데 HTTP 전송문제 일수도 있다 라는 것을 찾아
ssh를 설정하고 remote url을 변경했보았다.(개인 github 과 repo라 XXX 로 따로 썼다)
git remote set-url origin git@github.com:deaXXX/XXXXXXXXXX.git
그런데 같은 문제가 생겼다..
Enumerating objects: 3338, done.
Counting objects: 100% (3338/3338), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2640/2640), done.
error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400
send-pack: unexpected disconnect while reading sideband packet
Writing objects: 100% (3338/3338), 33.00 MiB | 50.58 MiB/s, done.
Total 3338 (delta 672), reused 3336 (delta 672), pack-reused 0
fatal: the remote end hung up unexpectedly
Everything up-to-date
그래서 이 문제를 잘 알수 있을꺼 같은 아는 분께 물어 보았는데
git config http.postBuffer 524288000
이 커멘드를 써보라고 알려주셨다.
그리고 그 커멘드를 쓴후 드디어!!
Enumerating objects: 19, done.
Counting objects: 100% (19/19), done.
Delta compression using up to 8 threads
Compressing objects: 100% (16/16), done.
Writing objects: 100% (18/18), 5.71 MiB | 33.79 MiB/s, done.
Total 18 (delta 3), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (3/3), done.
To https://github.com/deaXXX/XXXXXXXX.git
a16f2de..3fbe070 main -> main
문제가 풀렸다.
그래서 문제가 무엇인지 알아보니. 내가 아무래도 기존의 파일들과 세로 만든 파일들 그리고 삭제하는 파일들의 용량이 여럿 액선들이 곂처 기존 메모리 전송의 한계가 와서 문제가 생긴것 같다.
그래서 위의 커멘드를 사용해서 git을 통해 repo에 전송한는 데이터 한도를 더 올려서 세팅을 하였더니
문제가 해결된듯 하다.
앞으로 또 이런 문제가 생길지는 모르겠지만 생긴다면 이러한 문제도 있다는걸 인지하고 풀어봐야 겠다.