스택큐힙리스트

메시지 'src refspec master가 일치하는 것이 없음'은 Git에서 커밋을 푸시할 때 발생합니다. 본문

카테고리 없음

메시지 'src refspec master가 일치하는 것이 없음'은 Git에서 커밋을 푸시할 때 발생합니다.

스택큐힙리스트 2023. 11. 23. 09:52
반응형

저는 다음과 같이 저장소를 복제합니다:


git clone ssh://xxxxx/xx.git 

하지만 몇 개의 파일을 변경한 후에 addcommit을 하고, 이를 서버에 푸시하고 싶습니다:


git add xxx.php
git commit -m TEST
git push origin master

하지만 받은 오류는 다음과 같습니다:


error: src refspec master does not match any.  
error: failed to push some refs to 'ssh://xxxxx.com/project.git'

답변 1

어쩌면 커밋만 필요할 수도 있습니다. 저는 다음을 실행할 때 이와 마주쳤습니다:


mkdir repo && cd repo
git init
git remote add origin /path/to/origin.git
git add .

어이쿠! 커밋하지 않았네요!


git push -u origin master
error: src refspec master does not match any.

제가 해야 할 일은 다음 뿐이었습니다:


git commit -m initial commit
git push origin main

성공!

답변 2

메시지 'src refspec master가 일치하지 않음'은 Git에서 커밋을 푸시할 때 나타나는 문제입니다. 이 문제의 원인과 해결 방법을 알아보겠습니다.
Git은 버전 관리 시스템으로, 여러 사람이 동시에 작업하고 변경 내용을 추적할 수 있습니다. 팀원들은 작업한 내용을 커밋으로 저장하고 원격 저장소에 푸시하여 다른 팀원들과 공유합니다.
그러나 때로는 'src refspec master가 일치하지 않음'과 같은 오류 메시지가 나타날 수 있습니다. 이 오류는 일반적으로 몇 가지 이유로 발생합니다.
첫째, 로컬 저장소에 커밋이 없는 경우입니다. 로컬 저장소에 커밋이 없는 상태에서는 원격 저장소에 푸시할 내용이 없기 때문에 오류가 발생합니다. 이 경우, 작업한 내용을 먼저 커밋하고 푸시해야 합니다.
둘째, 현재 브랜치가 'master'가 아닌 경우입니다. Git은 기본적으로 'master'라는 이름의 브랜치를 사용합니다. 하지만 다른 브랜치를 사용 중인 경우, 현재 브랜치의 이름을 명확하게 지정해야 합니다. 예를 들어, 'git push origin '과 같이 명령을 실행하여 오류를 해결할 수 있습니다.
셋째, 원격 저장소의 'master' 브랜치가 삭제된 경우입니다. 이 경우 Git은 원격 저장소에 'master' 브랜치가 존재하지 않아서 오류가 발생합니다. 이런 경우에는 원격 저장소에서 다시 'master' 브랜치를 만들어야 합니다.
이러한 문제를 해결하기 위해 몇 가지 조치를 취할 수 있습니다. 먼저, 로컬 저장소에 변경한 내용을 커밋하고 원격 저장소에 푸시하는 것이 중요합니다. 그리고 현재 작업 중인 브랜치를 확인하고, 명령어를 사용하여 명시적으로 브랜치 이름을 지정해야 합니다. 마지막으로, 원격 저장소에 'master' 브랜치가 없는 경우, 'master' 브랜치를 다시 생성하는 것이 필요합니다.
이렇게 다양한 상황에서 'src refspec master가 일치하지 않음' 오류가 발생할 수 있으며, 각각의 상황에 적절한 해결책을 적용해야 합니다. Git의 강력한 기능과 다양한 명령어를 적절히 활용하여 문제를 해결할 수 있습니다.

반응형
Comments