src refspec master does not match any 해결방법

kimiszero·2021년 6월 2일
15

Github

목록 보기
1/1
post-thumbnail

src refspec master does not match any 해결방법

문제 : 로컬 저장소에 있는 프로젝트를 깃허브로 push하던 중 다음과 같은 에러를 마주했습니다. 해결하러갑시다!

이 에러는 깃허브에 올릴 때 명령어가 꼬이면 주로 발생하는 듯 합니다.
그러니 새로운 폴더를 만드시거나 해당 폴더 내 생성된 .git파일들을 삭제하시고 처음부터 명령어를 입력하시면 됩니다.

가장 간단한 해결방법 : 개인프로젝트

🔥 먼저 이 방법은 혼자서 개인프로젝트 하시는 분들에게 해당됩니다. 팀프로젝트를 하시는 분들이시라면 아래 기타 방법을 확인해보세요
1. 변경사항이 저장된 폴더는 잠시 보류합니다. 변경사항이 필요하신 부분이라면 삭제하지마시고 그냥 두세요
2. 꼬인 방법을 풀기보다 잘라버리는 방법입니다.
git clone을 사용해 다시 github에서 내 폴더를 가져옵니다. 기존의 폴더에 하시면 안됩니다. 새로운 폴더를 만들어 이어붙일거에요

git clone "github.com/your_ropo.git"

3.그리고 나서 아까 보류해뒀던 폴더에서 변경된 사항들을 새로 받아온 폴더로 적용합니다.

기타 해결 방법 : 팀프로젝트

팀프로젝트로 함께 하시는 분들이 있으시다면 이 방법을 보시면 됩니다.
권한이 제대로 주어졌는 지 PM님 혹은 프로젝트 생성하신 분께 확인해보세요
clone은 되지만 push는 안되는 경우도 이 에러가 발생하는데 이런 경우에는 위의 방법을 사용하지 마시고 write 권한을 받으시면 해결됩니다. 👍


여기서 해결이 되신다면 축하드립니다!
아래에 있는 방법들은 예전에 됐었는데 이번에 다시 시도하니 안되네요
혹시 다른 좋은 방법도 알게되신다면 공유해주시면 감사하겠습니다.
그럼 즐코하세요!

방법1. @데빗님 티스토리

터미널로 해당 프로젝트 폴더로 이동

git init
git branch -m main
git remote add origin "github.com/your_ropo.git"
git add .
git commit -m "first commit"
git push -u origin main

***

방법2. @HYNUL님 블로그

이 방법은 약간 꼼수를 쓰는 방법인데 main에서 꼬였을 경우 새로운 브랜치를 만들어서 해당 repository를 살리는 방법입니다. main브랜치는 이미 존재하니 master브랜치를 만들어서 브랜치 이동 후 푸시하는 방법입니다.

git checkout -b 'master'
git push origin master

기본으로 생성되는 브랜치명이 main이기 때문에 master 브랜치가 생성되지 않아 나온 에러였습니다. master라는 호칭이 사용되지 않고 main이 기본으로 생성되는 만큼 이 방법은 지양하시는 것이 좋겠습니다.😺




추가로 참고하면 좋을 글

@코린이님 티스토리

profile
Flutter&Dart

2개의 댓글

comment-user-thumbnail
2022년 3월 18일

에러 땜에 아이러니 했는데 도움이 됐어요 감사합니다!

1개의 답글