티스토리 뷰

오늘도 오픈소스를 가지고 놀고 있는데,

recursive라는 git 옵션이 눈에 들어온다.

평상시에는 그냥 무심히 갖다 붙여넣어서 썼는데

오늘은 무슨 바람인지 알고 싶어진다.

사람 관계도 가끔 그럴때 있지 않은가???

뻘소리는 여기까지 하고..

ohmygod이란 오픈 소스를 갖고 오려면

git clone --recursive https://github.com/ohmygod.git

요런 식으로 로컬 저장소로 clone 한다.

보통은 recursive 옵션 없이 그냥 썼었는데

좀 복잡하고 큰 오픈 소스이면 recursive가 들어있더라.

일단 영어 단어는 알고 넘어가자.

뜻은 ‘재귀’라는 뜻이다.

아래 그림에 recursive가 잘 나와 있다.

그림 잘 그렸네~ 바로 이해된다

~

재귀라는 말이 반복해서 한다는 건데

그럼 무엇을 어떻게 한다는거지??

하위 모듈을 반복해서 clone 하란거다.

git clone 하면 원격 저장소에 있는걸 땡겨 오는건 알꺼다.

그런데 저장소 안에 저장소를 넣을 수 있는데

이걸 서브 모듈이라 부른다.

그럼 저장소 안의 저장소들이 한 백개쯤 있으면??

이거 일일이 들어가서 git clone 해야할꺼다.

이런 반복 노가다를 안 해도 되는게 recursive 옵션이다.

이거 쓰면 하위 서브 모듈까지 모두 clone 한다.

안 쓰면?

서브모듈은 깡통 상태로 둔다.

끝~!