2017-01-31 1 views
1

에 체크 아웃을 수행하여 중첩 된 자식의 repo를 잃은,이 파일 구조를 가지고 있었다 즉시 다시 전환하고, voilà :주의! ,</p> 그때 부담 환매 약정 (A)에 다른 분기를 체크 아웃 <pre><code>-Repo A |- .git |- files |- Repo B |- .git |- files </code></pre> <p>은 (단순히 Mac 용 Github에서의 지점 전환) : 그냥 최근까지까지 부모

-Repo A 
|- .git 
|- files 
|- Repo B 

Repo B가 있지만 비어 있습니다! .git 디렉토리조차!

리모컨이 필요하지 않으며 2 주 동안 3D 모델링이 진행됩니다.

(아이러니 한 점은 내 모든 첫 번째 3D 모델이 손상되어서 내가 git를 사용하고 정기적으로 커밋한다고 생각했기 때문이다.) 그래서

답변

3

중첩 된 git repo는 gitlink으로 기록됩니다. 즉, 기본 저장소의 entry in the index입니다.

원래 지점으로 체크 아웃하면 Git은 gitlink를 복원하지만 SHA1이 어느 저장소에서 왔는지 모릅니다.

모두 SHA1에게 내용을 유지하려면, 당신은 submodule로 REPO B를 선언해야합니다.
그런 다음 메인 파일에 A 파일이 있습니다. 그러면 repo B 원격 원본 URL의 레코드가 유지됩니다.

관련 문제