Github Gitlab mirroring size over 100M

김정민·2023년 5월 22일
0
post-thumbnail
git clone --bare "Clone with HTTPS"

해당 코드는 HTTPS를 통해 접근 가능한 Git 저장소를 베어 저장소로 복제하는 명령어입니다. 실제로 실행하려면 "Clone with HTTPS" 부분을 실제 Git 저장소의 URL로 대체해야 합니다.

https://rtyley.github.io/bfg-repo-cleaner/
bfg.jar 다운로드. 위치는 Clone 과 같은 폴더 내에(형제관계)

java -jar bfg.jar --strip-blobs-bigger-than "Clone with HTTPS"

해당 코드는 bfg.jar 파일을 실행하여 "Clone with HTTPS"로 지정한 Git 저장소에서 크기가 지정한 값보다 큰 블롭을 제거하는 명령어입니다. 실제로 실행하려면 "Clone with HTTPS" 부분을 실제 Git 저장소의 URL로 대체해야 합니다.

cd "Clone with HTTPS"
 git reflog expire --expire=now --all && git gc --prune=now --aggressive

해당 코드는 Git의 히스토리 기록을 즉시 만료시키고, 가비지 컬렉션을 통해 불필요한 Git 객체를 즉시 제거하는 명령어입니다. 이를 통해 Git 저장소의 용량을 줄이고 성능을 향상시킬 수 있습니다. 주의할 점은 이 명령을 실행하면 기록된 작업이 완전히 제거되므로 주의해야 합니다.

 git push --mirror "REPO_URL"

해당 코드는 로컬 Git 저장소의 모든 브랜치와 태그를 원격 저장소로 미러링하는 명령어입니다. "REPO_URL" 부분을 실제 원격 저장소의 URL로 대체하여 실행해야 합니다. 이를 통해 로컬 저장소의 내용을 원격 저장소에 완전히 복사하고 동기화할 수 있습니다.

profile
코딩중독자입니다.

0개의 댓글