Github 관련

[yongggg's] gitlab의 submodule 가져오기, 폴더내의 폴더 가져오기

Yonggg 2025. 2. 18. 09:52

안녕하세요 이번엔 git clone 혹은 git pull 로 원격레포지토리의 내용을 가져왔을 때, submodule이 가져와지지 않은 상황에 대해 알아 보겠습니다.

git clone을 했을 때, 특정 폴더에 내용은 가져와지지 않아지는 상황이 있습니다. 이는 submodule로 구성되어 있어서 그렇습니다.

이럴 때는 다음과 같은 명령어로 submodule을 가져올 수 있습니다. (이 내용은 git clone 혹은 git pull로 원격 레포지토리의 내용을 1차적으로 가져왔다고 가정한다.)

1. 서브모듈 초기화 및 업데이트

원격 저장소의 브랜치를 가져온 후 서브모듈을 초기화하고 업데이트하려면 다음 명령어를 실행해야 합니다.

git submodule update --init --recursive
  • --init: 서브모듈을 초기화합니다.
  • --recursive: 서브모듈이 또 다른 서브모듈을 포함하고 있다면 그 서브모듈까지 모두 초기화하고 업데이트합니다.

2. 서브모듈 내용 최신 상태로 가져오기

서브모듈을 업데이트한 후, 각 서브모듈이 최신 상태인지 확인하고 최신 커밋을 가져오려면 다음 명령어를 실행합니다.

git submodule update --remote --merge
  • --remote: 서브모듈의 최신 커밋을 가져옵니다.
  • --merge: 변경 사항을 병합합니다.

이렇게 submodule 까지 모두 가져올 수 있습니다.