자식 서브 모듈을 추가 할 때 "당신은 아직 태어나지 않은 지점에 있습니다"
내 .vim/bundles
디렉토리에 몇 가지 하위 모듈을 추가하려고 하는데이 특정 저장소를 추가하려고하면 Git에서 전에 본 적이없는 이상한 오류가 발생합니다.
$ git submodule add -f git://github.com/derekwyatt/vim-scala.git .vim/bundle/vim-scala
fatal: You are on a branch yet to be born
Unable to checkout submodule '.vim/bundle/vim-scala'
이 문제를 일으킬 수있는 아이디어가 있습니까?
하위 모듈 명령을 통하지 않고 테스트 디렉토리에 동일한 저장소를 복제하면 정상적으로 작동하고 예상 파일을 작성합니다.
이 오류를 해결하려면 .git/modules/
디렉토리 내부의 서브 모듈에 대한 경로가 동일한 폴더를 삭제해야합니다 . 이 오류는 하위 모듈이 처음 추가되었을 때 하위 모듈에 대한 URL이 올바르지 않은 경우 발생할 수 있습니다.
당신은 서브 모듈을 추가 할 필요가 내부에 그 REPO 추가 및 서브 모듈 링크를 커밋 상태에 있어야합니다, 기존의 repo 및 자체의 repo 서브 모듈은 체크 아웃 할 것을 약속해야합니다.
이제 다른 곳에서 일반 복제본을 만들 수 있으면 하위 모듈 리포지토리 자체가 정상이어야합니다. 그러나 submodule add
복제본이없는 동안 저장소가 비어 있으면 불평 하는 것처럼 보입니다 . 이 사람 은 동일한 submodule add
명령을 다시 실행하여 해결할 수 있다고 제안 합니다.
내부 저장소가 비어 있지 않으면 서브 모듈 을 포함 할 저장소를 확인하십시오 . 같은 사용자가 실행 한 디렉토리로 변경 git submodule add
하고, 실행 git status
, 그리고 git branch
당신이 포함 REPO가 만든 적어도 하나 개의 지점을 가지고 이상한 상태가 아님을 확인합니다.
master
분기 가없는 하위 모듈을 추가하는 경우이 오류가 발생할 수 있습니다 . 서브 모듈을 추가 할 때 다른 분기를 사용하려면 (예 develop
를 들어) 다음 명령을 사용할 수 있습니다.
git submodule add -b <branch> <repository>
@ drew-noakes가 암시하는 것처럼, 이것은 .gitignore 파일에 나열된 디렉토리 이름을 사용하여 서브 모듈을 추가하려고 할 때 발생할 수 있습니다 .
'Programming' 카테고리의 다른 글
Visual Studio 2015에는 cl.exe가 없습니다 (0) | 2020.07.23 |
---|---|
포스트 백과 콜백의 차이점 (0) | 2020.07.23 |
데이터베이스와 함수형 프로그래밍이 우연입니까? (0) | 2020.07.23 |
다른 파일에서 사용할 외부 Python 코드를 포함시키는 방법은 무엇입니까? (0) | 2020.07.23 |
자식 버전 제어의 패치 란 무엇입니까? (0) | 2020.07.23 |