본문 바로가기
Tools/Git

[Git] git 저장소의 일부 디렉토리만 clone 하기 - git sparse checkout

by A6K 2023. 3. 23.

git 저장소에서 일부 디렉토리만 clone 받는 sparse checkout 기능 사용방법에 대해 알아보자.

git 저장소에 여러 프로젝트 혹은 여러 디렉토리가 있을 때, 그 중 일부만 사용하고 싶은 경우가 있다. 일부 디렉토리만 필요하기 때문에 저장소 전체 대신 필요한 일부 디렉토리 혹은 일부 파일만 clone 받아서 사용할 필요가 있다. 이 경우 git이 제공하는 sparse checkout 기능을 사용하면 된다.

디렉토리 생성하고 초기화

clone 받을 디렉토리를 생성하고 git init을 실행해준다. 그리고 다운받을 원격 저장소 주소를 추가해준다.

mkdir temp
cd temp
git init
git remote add origin {remote 저장소 주소}

sparse checkout 기능 설정

로컬 저장소의 설정으로 core.sparsecheckout 기능을 켜준다. 그리고 clone 할 디렉토리 이름을 .git/info/sparse-checkout 파일에 추가해준다.

git config --local core.sparsecheckout true
echo "디렉토리 경로/*" >> .git/info/sparse-checkout

코드 pull

git pull origin {branch 이름}

이러면 지정한 디렉토리만 clone 되어 사용할 수 있게 된다.

댓글