2016-09-08 4 views
0

개의 분기가있는 프로젝트가 개입니다. 프로젝트의 하위 모듈에는 마스터스테이징 분기가 있습니다.GIT Checkout - Submodules

내 .gitmodules 파일이 브랜치를 올바르게 참조했습니다. 예 : 지점 마스터에 내 프로젝트는 다음

[submodule "src/mysubmodule"] 
    path = src/mysubmodule 
    url = https://[email protected]/username/mysubmodule.git 
    branch = master 

을 준비 분기를 가지고있다

[submodule "src/mysubmodule"] 
    path = src/mysubmodule 
    url = https://[email protected]/username/mysubmodule.git 
    branch = staging 

내가 분기를 전환하는 경우뿐만 아니라 내 서브 모듈 (들)의 분기를 전환하려면 내 프로젝트의. git checkout master

+0

'git submodule update'? – hjpotter92

+0

아니요, 서브 모듈 브랜치를 바꾸지 않습니다 – dknaack

+0

'git submodule update'에는 추가 [flags available] (https://devdocs.io/git/git-submodule)이 있습니다. ""업데이트 "는 명령 행 옵션과'submodule. .update' 구성 변수의 값에 따라 여러 가지 방법으로 수행 할 수 있습니다." 나는 틀릴 수도 있지만 체크 아웃은 당신이 여기에서 찾고있는 것이라고 생각합니다. – hjpotter92

답변

0

submodule.<id>.branch 구성은 git submodule update --remote 또는 ... --rebase에 대한 힌트 일뿐입니다. 기본 --checkout 조작으로 무시됩니다.

"준비 지점"분기의 서브 모듈을 수동으로 업데이트해야합니다 (예 : git submodle update --remote). 그러면 이러한 변경 사항을 커밋해야합니다.