힘내 오류 : src refspec 마스터가
이라는 리포지토리를 만들어야합니다
carboncake
.
나는 이것을 시도했다 :
gitosis-admin 저장소를 로컬 컴퓨터에 복제했습니다.
$ git clone gitosis@myserver.net:repositories/gitosis-admin.git
$ cd gitosis-admin
$ vim gitosis.conf
파일 끝에
[repo carboncake]
및
[group carboncake]
섹션을 추가했습니다.
[gitosis]
[group team]
writable = sweepshots
members = git_id_rsa
[group gitosis-admin]
writable = gitosis-admin
members = git_id_rsa
[repo carboncake]
description = A brand new app by Mithun.
owner = Mithun P
[group carboncake]
writable = myappname
members = mithun @core
그런 다음 Putty가 생성 한 펍 키 파일을 복사했습니다 (Windows 용 Git basg를 사용하고 있습니다).
$cp /some/where/mithun.pub keydir/mithun.pub
다음 명령을 실행했습니다 :
$ git add gitosis.conf keydir/mithun.pub
$ git commit -m "Added 'carboncake' repository and 'mithun' user."
$ git pull --rebase
$ git push
그러나 내 서버에는 carboncake.git을 만들지 않습니다.
그래서 나는 이것을 따랐다.
서버에서 다음 명령을 실행했습니다.
$ su gitosis
$ git init --bare /srv/gitosis/repositories/carboncake.git
내 문제는 다음과 같습니다.
로컬 컴퓨터에서 새 리포지토리를 체크 아웃 / 복제하려고했습니다.
$ mkdir carboncake
$ cd carboncake
$ git init
$ touch a_text_file.txt
$ git add a_text_file.txt
$ git remote add origin gitosis@myserver.net:repositories/carboncake.git
$ git push origin master
어느 오류를 반환 :
error: src refspec master does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'gitosis@myserver.net:repositories/carboncake.git'
내가 시도했을 때
git push origin HEAD:master
오류가 발생했습니다.
error: src refspec HEAD does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'gitosis@myserver.net:repositories/carboncake.git'
내가 시도했을 때
git push origin master:refs/heads/master
오류가 발생했습니다.
error: src refspec master does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'gitosis@myserver.net:repositories/carboncake.git'
git show-ref
로컬 컴퓨터에서 아무것도 표시되지 않습니다또한
/srv/gitosis/repositories/carboncake.git/refs/heads/
서버의 디렉토리가 비어 있습니다.이 문제를 어떻게 해결할 수 있습니까?
새 저장소를 작성하고 색인에 일부 파일을 추가했지만 아직 첫 번째 커미트를 작성하지 않았습니다. 완료 후 :
git add a_text_file.txt
... 하다:
git commit -m "Initial commit."
... 그리고 그 오류는 사라질 것입니다.
빠른 답변 : 빈 git 저장소를 처음 성공적으로 복제하면 원본에 마스터 분기가 없습니다. 따라서 처음으로 푸시하겠다고 약속하면 다음을 수행해야합니다.
git push origin master
이 새로운 마스터 브랜치를 만들 것입니다. 이와 같은 작은 것들이 git과 매우 혼동됩니다.이렇게해도 문제가 해결되지 않으면 아마도 gitolite 관련 문제 일 수 있습니다.conf 파일이 이상하게 보입니다. gitolite와 함께 제공되는 예제 conf 파일이 있어야합니다. 광산은 다음과 같습니다.
repo phonegap
RW+ = myusername otherusername
repo gitolite-admin
RW+ = myusername
conf 파일을 올바르게 설정했는지 확인하십시오.Gitolite는 실제로 gitolite 사용자 계정을 대화식 터미널 세션을 허용하지 않는 수정 된 셸로 바꿉니다. gitolite 사용자 계정을 사용하여 상자에 ssh를 시도하여 gitolite가 작동하는지 확인할 수 있습니다. 사용자가 누구인지 아는 경우 "Hi XYZ, 다음과 같은 저장소에 액세스 할 수 있습니다 : X, Y, Z"연결을 닫으십시오. 모르는 경우 연결을 닫습니다.마지막으로, 로컬 머신에서 첫 번째 git push가 실패한 후에는 서버에서 수동으로 repo를 작성해서는 안됩니다. 왜 git push가 처음에 실패했는지 알아야합니다. gitolite를 설정 한 후에 독점적으로 사용하지 않으면 자신과 gitolite가 더 혼란 스러울 수 있습니다.참고 URL :
https://stackoverflow.com/questions/5802426/git-error-src-refspec-master-does-not-match-any
'Programming' 카테고리의 다른 글
Go는 어떻게 그렇게 빨리 컴파일됩니까? (0) | 2020.05.05 |
---|---|
변경시 선택한 파일의 전체 경로를 얻는 방법 (0) | 2020.04.27 |
Django 쉘에서 Python 스크립트를 실행하는 방법은 무엇입니까? (0) | 2020.04.25 |
Android에서 활동 제목을 변경하는 방법은 무엇입니까? (0) | 2020.04.25 |
괄호 (대괄호) 사이에있는 텍스트는 어떻게 추출합니까? (0) | 2020.04.25 |