Git Submodule은 하나의 Git 저장소 내에서 다른 Git 저장소를 서브 디렉토리로 포함할 수 있도록 하는 기능을 말함
용도: 프로젝트의 일부분을 별도의 독립적인 버전 관리가 필요한 상황에서 유용함
공유 코드 라이브러리: 여러 프로젝트에서 공통으로 사용되는 라이브러리를 별도의 저장소로 관리
서드 파티 코드 포함: 외부에서 관리되는 오픈소스나 서드 파티 라이브러리를 포함할 때
모놀리식 레포에서의 분리: 큰 프로젝트를 작은 모듈로 나누어 독립적으로 관리하고자 할 때
git submodule add <repository_url> <submodule_directory>
# 예시
git submodule add https://github.com/example/library.git lib/library
git submodule init
git submodule update
git submodule update --remote
git submodule update
와git submodule update --remote
의 차이점
git submodule update
는 Submodule을 현재 커밋 상태로 업데이트함git submodule update --remote
는 Submodule을 원격 저장소의 최신 커밋으로 업데이트함