2012-11-23 3 views
0

하위 모듈로 다른 repo와 함께 git repo가 ​​있습니다. 하위 모듈은이 프로젝트에서만 사용됩니다. Subrepo에서 변경을 위탁했으나 부모 Repo는 이전 버전을 계속 참조합니다 (Subproject commit 989471 ..... 등)하위 모듈의 상위 저장소에서 커밋 해시를 업데이트하는 방법은 무엇입니까?

부모 repo가 ​​최신 버전의 subrepo를 가리 키도록 업데이트하려면 어떻게해야합니까? Subrepo를 바꿀 때 동기화를 유지할 수 있도록 더 나은 방법이 있습니까?

답변

1

서브 모듈에 커밋 후에는 부모 저장소로 디렉토리를 변경하고 수행

git add path/to/submodule 

를하고 변경을 커밋합니다. 그러면 추적 된 확약 ID가 갱신됩니다. 하위 모듈에서 커밋 (그룹) 할 때마다이를 수행해야합니다.

부모 저장소의 상태가 하위 저장소의 특정 상태에 따라 달라질 수 있으므로 실제로는 상당히 합리적입니다 (예 : 프로그램 라이브러리를 묶는 경우에 특정 버전이 필요할 수 있음). 컴파일 작업이 필요함), 이는 특정 분기의 HEAD를 맹목적으로 체크 아웃하는 대신 상위 저장소에서 서브 모듈 커밋을 추적하는 것이 현명한 이유입니다.

+0

저를 고쳐주었습니다. 문제는 서브 페어에 무언가를 추가하지 않았고 더러운 것처럼 보였음에 틀림 없다고 생각합니다. 나는 이것을 알아 내려고하는 사용자이다. 감사! – wtjones

관련 문제