GitHub에서 프로젝트를 복제 한 후 git 하위 모듈 가져 오기


90

하위 모듈을 지정한 프로젝트가 있습니다. 모든 것이 개발 시스템에서 잘 작동합니다. 나는 .gitmodules파일 을 커밋 하고 프로덕션을 가져 왔습니다. 그러나 하위 모듈을 가져 오지 않습니다.

하위 모듈 디렉토리로 이동하여를 호출 git pull하면 아무 일도 일어나지 않습니다.

새 프로젝트에서 해당 하위 모듈을 가져 오는 적절한 방법은 무엇입니까?

답변:


140

저장소의 루트에서 다음을 실행하십시오.

git submodule update --init

8
나는 이것이 실제로 당신의 의존성을 업데이트 할 것이라고 믿습니다. 나는 S. Russel이 아래 그의 코멘트에서 올바른 명령을 가지고 있다고 생각합니다 :git pull --recurse-submodules
Spencer

37

하위 모듈에 대한 항목을 하위 모듈 저장소로 가져와야하는 경우

git pull --recurse-submodules

그러나 이것은 서브 모듈에서 적절한 커밋 (마스터 저장소가 가리키는 것)을 체크 아웃하지 않습니다.

하위 모듈에서 적절한 커밋을 확인하려면 다음을 사용한 후 업데이트해야합니다.

git submodule update --recursive

1
git submodule update --recursive처음 git clone노래를 한 후에 필요 했지만 처음 에는 잊어 버렸습니다 --recursive. 감사!
mbb

8
이것은 나를 위해 작동하지 않는 것 같습니다. 하위 모듈은 비어 있습니다.
CodeMonkey

@CodeMonkey는 나에게 동일합니다.
linkerx

6
파티에 있지만 여기에 결국 누군가를 위해 너무 늦을 수 있습니다 : git submodule update --init --recursive내 문제 해결
Iglesk

21

중첩 된 하위 모듈이있는 경우 다음을 사용해야합니다.

git submodule update --init --recursive
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.