Git 서브모듈

Kwon·2024년 9월 12일

Git

목록 보기
8/8

Git Submodule

서브모듈이란?

Git의 레포지토리 하위에 다른 저장소를 관리하기 위한 도구이다. 이때 상위 레포지토리를 슈퍼 프로젝트(superproject), 하위 레포지토리를 서브 모듈(submodule)이라고 부른다. (혹은 부모 저장소, 자식 저장소라고 부르기도 한다.) 서브모듈을 사용하면 특정한 Git 레포지토리를 다른 레포지토리의 하위 디렉토리로 사용할 수 있다.

실습

저장소 만들어주기

  • 우선 서브모듈을 저장해줄 레포지토리 하나를 만들어 준다.

로컬에서 서브모듈 생성

  • 실험을 위해 Main 과 Sub의 레포지토리를 만들어주자. (Main이 Sub를 받아올 repo, Sub는 서브모듈 대상)

  • 임의의 디렉토리 파일을 만들어 안에 자료 하나를 간단히 만들어보자.

$ touch a
$ git add .
$ git commit -m "first commit"
$ git push origin main
  • 이것을 Sub 원격 레포지토리에 저장해놓고 다음은 Main에서 Sub의 서브모듈을 만들어 보자. 명령어는 다음과 같다.
  • 필요 시, Main도 git에 대한 기본적인 세팅은 해야 한다. (프로젝트 수행 시)
git submodule add https://github.com/devHudi/sub-repository.git lib
  • 서브에 저장해두었던 모듈을 메인에 저장하고 .gitmodules를 확인해보면 다음과 같은 정보가 나온다.
[submodule "Sub"]
	path = Sub
	url = https://github.com/bukwon/SubModule-Test.git
profile
📲 @bu_kwon_2 / 💻 dnu05043.log / ⌨ Back-end / 🦁 LikeLion

0개의 댓글