자식 리포지토리에서 종속성을 어떻게 연결할 수 있습니까?
내 스크립트에서는 종종 자체 저장소가있는 라이브러리 (광산 또는 다른 사람)를 사용합니다. 내 리포지토리에서 복제하고 새 버전이 나올 때마다 업데이트하지 않으려 고합니다. 그러나 누군가 리포지토리를 복제 할 때 여전히 로컬에서 작동하며 링크가 끊어지지 않아야합니다.
내가 할 수있는 일에 대한 아이디어가 있습니까?
git의 하위 모듈 로이 작업을 수행 할 수 있습니다. 저장소에서 다음을 수행하십시오.
git submodule add path_to_repo path_where_you_want_it
따라서 라이브러리의 저장소에 URL이 git://github.com/example/some_lib.git있고 lib/some_lib프로젝트 에서 URL 을 원하면 다음을 입력하십시오.
git submodule add git://github.com/example/some_lib.git lib/some_lib
이 작업은 리포지토리의 최상위 디렉터리에서 수행해야합니다. 따라서 cd먼저 디렉토리에 넣지 마십시오 .
하위 모듈을 추가 한 후 또는 누군가 저장소를 새로 체크 아웃 할 때마다 다음을 수행해야합니다.
git submodule init
git submodule update
그런 다음 추가 한 모든 하위 모듈이 동일한 버전으로 체크 아웃됩니다.
라이브러리 중 하나의 최신 버전으로 업데이트 cd하려면 하위 모듈로 이동하여 다음을 수행하십시오.
cd lib/some_lib
git pull
그런 다음, 당신이 할 때 git status당신은 참조해야 lib/somelib수정 된 섹션에 나열된. 해당 파일을 추가하고 커밋하면 최신 상태입니다. 공동 작업자가 해당 커밋을 저장소로 가져 오면 다시 lib/somelib실행될 때까지 수정 된 것으로 표시 됩니다 git submodule update.
참고 URL : https://stackoverflow.com/questions/7813030/how-can-i-have-linked-dependencies-in-a-git-repo
'Programming' 카테고리의 다른 글
| 기본 양식 HTTP 메소드는 무엇입니까? (0) | 2020.06.22 |
|---|---|
| 잘 설계된 Android 애플리케이션의 오픈 소스 예? (0) | 2020.06.22 |
| 지점을 로컬로 제거하는 방법? (0) | 2020.06.22 |
| contentEditable에서 커서 위치 설정 (0) | 2020.06.22 |
| XPath : 텍스트 노드 선택 (0) | 2020.06.22 |