자식 서브 모듈 추적 최신
우리는 (거대한) 프로젝트를 git으로 옮기고 하위 모듈 사용에 대해 생각하고 있습니다. 우리의 계획은 superproject에 세 가지 다른 헤드를 두는 것입니다 : 릴리스, 안정, 최신. 프로젝트 리더는 릴리스 및 안정적인 분기를 처리합니다. 필요한 경우 서브 모듈을 이동시킵니다.
문제는 "최신"헤드입니다. 우리는 슈퍼 프로젝트 "최신"헤드가 모든 서브 모듈의 마스터 브랜치를 자동으로 추적하기를 원합니다. 그리고 서브 모듈에 대한 모든 커밋의 역사를 보여 주면 좋을 것입니다.
나는 gitslave를 보았지만 우리가 원하는 것은 아닙니다. 어떤 제안?
2013 년 3 월 업데이트
Git 1.8.2 는 분기를 추적 할 수있는 가능성을 추가했습니다.
"
git submodule
" (수퍼 프로젝트의 gitlink에 기록 된 커밋과 통합하는 것과는 대조적으로) 원격 브랜치의 팁과 통합 하기위한 새로운 모드를 배우기 시작했습니다 .
# add submodule to track master branch
git submodule add -b master [URL to Git repo];
# update your submodule
git submodule update --remote
하위 모듈이 이미 있는 경우 이제 분기를 추적하고 싶을 것 입니다. " 기존 하위 모듈을 분기로 추적하는 방법 "을 참조하십시오 .
하위 모듈에 대한 일반 정보는 하위 모듈에 대한 Vogella의 자습서를 참조하십시오 .
노트 :
git submodule add -b . [URL to Git repo];
^^^
참조 git submodule
맨 페이지를 :
하위 모듈의 분기 이름이 현재 저장소의 현재 분기와 이름이 같아야
.
함을 나타내는 특수 값 이 사용됩니다 .
commit b928922727d6691a3bdc28160f93f25712c565f6 참조하십시오 :
submodule add
: --branch
주어진 경우에 기록하십시오.gitmodules
이를 통해 새 하위 모듈을 추가 할 때
submodule.<name>.branch
옵션 을 쉽게 기록.gitmodules
할 수 있습니다. 이 패치로
$ git submodule add -b <branch> <repository> [<path>]
$ git config -f .gitmodules submodule.<path>.branch <branch>
로 줄이다
$ git submodule add -b <branch> <repository> [<path>]
이것은 미래에 전화를
$ git submodule update --remote ...
하위 모듈을 초기화하는 데 사용한 것과 동일한 분기에서 업데이트를 얻습니다. 일반적으로 원하는 것입니다.
서명 : W. Trevor King
원래 답변 (2012 년 2 월) :
서브 모듈은 부모 저장소가 참조하는 단일 커밋입니다.
자체 Git 저장소이므로 "모든 커밋 기록"은 git log
해당 하위 모듈 내에서 액세스 할 수 있습니다 .
따라서 부모가 하위 모듈의 특정 분기에 대한 최신 커밋을 자동으로 추적하려면 다음이 필요합니다.
- 서브 모듈의 cd
- git fetch / pull을 사용하여 오른쪽 분기에 최신 커밋이 있는지 확인하십시오.
- 부모 리포지토리로 돌아 가기
- 서브 모듈의 새로운 커밋을 기록하기 위해 추가하고 커밋합니다.
커밋 작업을 포함하여 gitslave (이미 살펴본)가 가장 적합 합니다 .
올바른 서브 모듈 분기를 체크 아웃하고 변경하고 커밋 한 다음 수퍼 프로젝트로 이동하여 커밋을 커밋 (또는 적어도 새로운 위치를 기록해야 함)하여 서브 모듈을 변경하는 것은 약간 성가신 일입니다. 하위 모듈).
다른 대안이 여기 에 자세히 설명되어 있습니다 .
참고 URL : https://stackoverflow.com/questions/9189575/git-submodule-tracking-latest
'development' 카테고리의 다른 글
IntelliJ의 RegEx 역 참조 (0) | 2020.07.04 |
---|---|
누군가 Javascript에서 "디 바운스"기능을 설명 할 수 있습니까? (0) | 2020.07.04 |
TypeError : module .__ init __ ()는 최대 2 개의 인수를받습니다 (3 개 제공) (0) | 2020.07.04 |
신속하게 배열 유형 및 기능 매개 변수로 프로토콜 사용 (0) | 2020.07.03 |
Maven을 사용할 때 더 엄격한 Java 8 Javadoc을 해결하는 방법 (0) | 2020.07.03 |