고급 Git
Amanda Crawford-Adamo
Software and Data Engineer
Git 서브모듈
git submodule

경로 폴더 아래에 링크나 디렉터리로 서브모듈을 추가합니다.
git submodule add <repository link|dir> <path>
$$
예시
ETL 리포의 libs/validator 폴더에 데이터 검증 라이브러리를 추가합니다.
git submodule add https://github.com/example/data-validator.git libs/validator
프로젝트의 모든 서브모듈 나열
git submodule status
예시
$ git submodule status
e1f2...7w8x9 data_cleaning_lib
a1b2...q7r8 api_connector
d9e8...t3u2 visualization_toolkit
서브모듈을 최신 상태로 업데이트
옵션은 다음과 같습니다:
git submodule update --init
git submodule update --init --remote
git submodule update --init <path_to_submodule>
서브모듈 제거 절차
git submodule deinit <submodule_name>
git rm <path>
새 서브모듈 저장소에 넣을 파일을 리포지토리 밖의 다른 폴더로 복사합니다.
새 폴더에서 서브모듈용 새 저장소를 만듭니다:
git init <new-submodule>
메인 프로젝트에서 관련 파일과 기록을 추출하려면 git filter-repo를 사용합니다:
git filter-repo --path <extract_path> --invert-paths
추출한 저장소를 메인 프로젝트에 서브모듈로 추가합니다:
git submodule add <new-submodule_path> <path_to_store_submodule>
사용 사례:
모범 사례:
고급 Git