코딩
[Git] Warning: Large files detected. 본문
리파지토리를 이동해주는 과정에서
100MB가 넘는 파일을 push하려니 오류가나는 일이 발생하였다.
데이터가 50만건 쯤 있는 sql 파일이었는데, push하는 과정에서 한번 이런 오류가 나고 commit 기록이 남아있는 상태에서
무작정 방법들을 쓰려고하니 잘 되지 않았다.
내가 찾아본 방법은
1. Git LFS
2. Git config에서 Increasing buffer size
3. BFG
로 1번과 2번은 왜인지 해결이 되지 않았고, 100MB가 넘어가는 sql파일이 굳이 필요하지 않은 파일이었어서
3번으로 오류를 해결할 수 있었다.
Git은 100M가 넘는 파일을 push하지 못한다.
BFG Repo-Cleaner을 통해서 해당 에러를 해결해주었다.
https://rtyley.github.io/bfg-repo-cleaner/
bfg.jar 파일을 다운 받아서 원하는 경로에 다운받아주고 그 bfg.jar파일이 있는 경로에서 clone한 git폴더를 가리키면 된다.
java -jar bfg-1.14.0.jar --strip-blobs-bigger-than 100M git폴더
100M 가 넘는 blob(Binary Large Object)들을 제거해주라는 뜻이다(strip-out).
하지만 주의할 점은 위 명령어만으로 물리적으로 파일을 삭제해주는것은 아니다.
꼭 아래 명령어 까지 같이 실행해 주어야 push할 때 오류가 나지 않는다.
$ cd some-big-repo.git
$ git reflog expire --expire=now --all && git gc --prune=now --aggressive
'Git' 카테고리의 다른 글
Jenkins와 Git Webhook 연결하기 (0) | 2023.01.31 |
---|
Comments