https://eunjinii.tistory.com/128
해당 블로깅을 참고하였다.
문제 상황
최종 파일을 정리하고, 발표 대본과 데이터를 넣던 도중 팀원이 최종 브랜치에 많은 양의 대용량 데이터를 넣는 일이 있었다.
이 이후 pull이나 파일을 받아오는 과정에서 RPC failed 에러가 발생했다.
아마, 대용량 파일 변경 기록이 있어서 일 테였다.
최신 커밋 기록만 받아와서 효율적으로 받아오기 (depth)
git pull origin dev/elasticsearch --depth 1 명령어를 사용하면 Git은 'shallow clone'을 생성한다.
이는 리포지토리의 전체 기록 대신 최신 커밋만 복사하는 것을 의미한다.
--depth 1 옵션은 Git에게 가장 최근 커밋만 가져오라고 지시한다.
--depth 의 역할:
- 저장 공간 절약: 리포지토리의 전체 기록을 복사하지 않기 때문에 디스크 공간을 절약
- 속도 향상: 최신 커밋만 받아오기 때문에 속도가 빨라짐. 특히 대용량 리포지토리나 느린 네트워크 환경에서 유용
점진적으로 전체 리포지토리 받기?
만약 점진적으로 전체 리포지토리를 받아오고 싶다면, --depth 옵션을 조절하여 더 많은 커밋을 가져올 수 있다.
예를 들어, 먼저 --depth 10을 사용해 최근 10개의 커밋을 가져오는 식이다.
혹은 ' git fetch --unshallow' 를 사용하여 모든 정보를 가져올 수도 있을 것이다.
결론적으로, --depth 옵션은 리포지토리의 일부만 필요할 때 유용하다.
다만 전체 기록에 대한 액세스가 필요한 경우에는 전체 리포지토리를 클론할 것.
'CS study > 기타 토막지식' 카테고리의 다른 글
gradle heap 초과 시 해결 방법 (Expiring Daemon because JVM heap space is exhausted) (24.05.21) (0) | 2024.10.01 |
---|---|
Record Pattern (24.05.03) (0) | 2024.09.26 |
InteliJ lombok 인식 불가(Cannot resolve symbol 'info', Cannot Find log) (0) | 2024.04.06 |
[JIRA] 지라에 대해 (About Jira) (2) | 2023.12.05 |
가상 메모리 (0) | 2023.10.20 |