2014-12-04 4 views
1

gitolite을 사용하여 소수의 git 리포지토리로 서버를 설정했습니다.서버에서 gitolite에 새로운 repo가 ​​추가되어 거기에 푸시하려고하면 "check to not checkout"이 발생 함

gitolite.conf을 업데이트하여 새 저장소에 대한 항목을 가지고 (누름 설명 : here) 새 저장소를 추가했습니다.

그런 다음 로컬 시스템에 git 원격 항목을 추가하여 새 gitolite 저장소로 푸시 할 수 있습니다.

나는 시도하고있다 마스터 이외의 분기를 밀어 때, 나는 다음과 같은 오류를 참조하십시오

remote: warning: remote HEAD refers to nonexistent ref, unable to checkout 
+1

실제로, 실패한 클론이 gitolite repo에서 복제하려고 시도하고있는 git hook에서 일어나고 있음을 알게되었습니다. (repo에서 코드를 공개적으로 볼 수있는 폴더로 복사하는 과정에서). 따라서 gitolite 자체가 실제로이 문제에 부딪히지는 모르겠습니다. 그러나'git symbolic-ref' 명령 (내 답변 참조)이 '존재하지 않는 심판'오류에 실제로 사용하는 명령이기 때문에이 Q & A를 떠날 것입니다! – Sam

답변

1

문제는 자신의 기본 분기로 마스터를 사용하는 gitolite의 repos는 기본이다, 그래서 그것에서보고되었다 내가 추진하고있는 심판을위한 마스터 브랜치는 거기에 없었습니다.

git symbolic-ref 명령을 사용하여 here을 수정하는 방법을 찾았습니다. 포스트가 설명 하듯이, 명령은 최신 버전에서 gitolite 자체를 통해 실행되거나 원격 서버에 로그인하여 거기에서 수행 할 수 있습니다.

필자의 경우 서버 (예 : /home/git/repositories/my_new_one.git)에서 새 레포로 이동하여 git symbolic-ref HEAD refs/heads/develop을 실행하고 기본 분기를 develop으로 전환했습니다.

필자는 필요에 따라 개발 지점을 여기에 밀어 넣을 수 있습니다.

+0

그 방법을 승낙한다) +1 – VonC