Github_ 에러 해결_error: GH001: Large files detected.

이고운·2022년 10월 31일
0

github에러

목록 보기
1/1

포트폴리오 작업 중인데 갑자기 push하는데 에러가 발생했다. 검색해보니까 깃헙에 올리는 파일이 100M가 넘으면 안된다고 한다. 그런데 나는 최종적으로는
사용을 안할 꺼라 지웠는데, 지운다고 끝이 아니라 커밋이 남아 있기 때문에 push 오류가 뜨는 거라고 한다. 결과적으로 해결을 했는데 어떻게 해결했는지 기록하고자 한다.

1. 에러 발생 : 큰 용량의 파일을 저장한채로 commit 날림

remote: Resolving deltas: 100% (25/25), completed with 7 local objects.
remote: error: Trace: 360e188389b6d517033fc6534ecfdfabb7c92ff0bc863f19446b5237f4875bd6
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File assets/1team_project_vid.mp4 is 165.43 MB; this exceeds GitHub's file size limit of 100.00 MB
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.

2. 해결 시도 과정

push를 하려고 하니까 위와 같은 에러가 떴다. 그래서 에러메세지를 가지고 구글링을 시도했다.
만약 저 큰 파일을 올리고 싶다고 하면 그 방법은 따로 있지만 난 최종적으로는 그 파일이 필요없기 때문에 그냥 지우려고 했다.

여러가지 글을 찾아보니 git clone --mirror한 다음 커밋 이력 정리하는 방법이 있는 것 같은데 그 방법은 시도했지만 되지 않았다. 또한 git push를 취소하는 방법도 원하지 않았기 때문에 그 방법은 아예 시도하지 않았다.
협업하는 레포가 아니기 때문에 그 방법도 괜찮을 것 같긴 하다.

3. 해결방법

저 에러메세지를 보면 링크가 하나 있다.
http://git.io/iEPt8g
github 공식문서이고 대용량 파일 관리하는 방법에 대한 문서이다.


중간 쯤에 보면 큰 파일을 지우는 방법에 대한 안내 메뉴가 있다.
저곳을 클릭해 들어가면


위와 같이 파일 제거에 대한 문구가 또 나온다. 여기서 파란색 링크의
"Removing sensitive data from a repository" 를 클릭하면 상세 방법이 나온다.

그 방법을 시도하기 위해서는 먼저 BFG Repo-Cleaner를 설치해야한다.
해당 깃헙 문서에 친절하게 나와있다.

https://rtyley.github.io/bfg-repo-cleaner/

해당 파일을 설치하고 공식 문서에 따라 하기 명령어를 입력해주면 된다.
$ bfg --delete-files YOUR-FILE-WITH-SENSITIVE-DATA

내 경우에는
bfg --delete-files 1team_project_vid.mp4 였다.
혹시 경로를 입력해야하나 싶어서 처음에는
bfg --delete-files assets/1team_project_vid.mp4로 했는데 안돼서 위에 명령어로 다시 입력했다.

이렇게했더니 얼마 지나지 않아 이런 메세지가 떴다.

BFG run is complete! When ready, run: git reflog expire --expire=now --all && git gc --prune=now --aggressive

그리고 나서 푸쉬했더니 잘되었다!!!
에러 발생할 때는 푸쉬하는 로딩이 엄청 느렸는데 이번에는 속도가 빨라서 '아 되는구나' 했다 😃

4. 느낀점

이런 에러는 또 처음이라, 처음에는 뭐가 문제지 했다.
일단 100메가 이상 파일은 일반적으로 업로드를 하지 못한다는 것을 이번 기회로 알게 되었다.
또 이번에 구글링 하면서 알게 된 것은 이렇게 레포 정리하는 방법이 큰 파일 정리할 때랑, 민감한 정보 정리할 때 쓰인다는 것이었는데 앞으로는 데이터 저장할 때 유의해야겠다는 생각이 들었다. 이렇게 새로운 깃 에러메세지 만남 이력 추가😝

profile
자 이제 시작이야~ 내 꿈을~ 내 꿈을 위한 여행~~🌈

0개의 댓글