728x90
반응형
Main Project와 Sub Project가 있을 때 Sub Project를 관리하기 위한 Sub repository
Main Project와 Sub Project가 있을 때, 보통은 모든 프로젝트를 하나의 git repo.에 저장하지 않는다. Main만 자주 업데이트하고, sub는 업데이트하지 않을 수 있기 때문이다. 그리고 한꺼번에 관리하는 것은 시간 및 네트워크 비용이 클 수 있다.
링크에서 예를 드는 부분은, node 계열의 프로그램을 작성할 때 다른 곳에서 받아오는 라이브러리들은 이름과 버전 정보 등만 pacakage.json에 담아놓고, 실제 파일은 node_modules 폴더에 저장한채로 git에는 올리지 않는다는 내용이다. 상기 작성한 부분 중 Sub Project가 다른 곳에서 받아오는 라이브러리와 비슷한 의미이다.
그래서, sub 모듈도 따로 git으로 관리할 수 있도록 git에서 submodule을 제공한다. 기초 명령어는 다음과 같다.
git submodule init
git submodule update
git submodule foreach git checkout master
주의할 사항은, 원격에서 로컬로 git을 받아오는 pull, clone, update 같은 명령어는 Main -> Sub 순으로 진행해야 하고, 로컬에서 원격으로 업데이트하는 경우에는 Sub -> Main 순으로 진행해야 한다는 것이다. 차례대로 Main의 바탕 위에서 Sub가 작동할 수 있고, Sub의 반영분이 Main에 적용되도록 하기 위함이라고 이해하면 된다.
더 자세한 사항은 링크!
https://pinedance.github.io/blog/2019/05/28/Git-Submodule
728x90
반응형
'Programming-[Base] > git' 카테고리의 다른 글
GPG key to github - GNUPG, pinentry 에러 mac M1 (0) | 2023.07.28 |
---|---|
[TIL] git submodule, python setup.py와 pip, Docker CMD Bash shell (0) | 2023.05.16 |
[TIL] github Action 안돌거나 이상할 때 (0) | 2023.03.03 |
Git Commit 취소 : Reset, Revert 개념 이해하기 (0) | 2022.07.30 |
[TIL][링크]git windows ↔ Mac 간 개행문자(CRLF) 차이 처리 (0) | 2022.07.04 |