git push 하는 과정에서 자꾸 같은 오류가 났다.
error: src refspec main does not match any
왜 이러한 오류가 생기는 지 알기위해 구글링을 해본 결과, 해결책을 발견할수있었다.
git pull을 통해 깃허브에있는 자료를 나의 로컬로 가져온뒤 다시 push를 하는 것이었다.
바로 명령어를 입력해보았지만 push하는 과정에서 또다시 같은 오류가 떴다.
반복되는 오류로 git init 초기화과정부터 git push까지 내가 입력한 것들이 잘 작동되었는지 살펴보았다. 그러다가 git add .파일 추가 과정에서
warning: LF will be replaced by CRLF.
이라는 오류를 발견했고 이것을 복사해 다시 구글링해보았다.
이는 맥 또는 리눅스를 쓰는 개발자와 윈도우 쓰는 개발자가 Git으로 협업할 때 발생하는 Whitespace 에러다. 유닉스 시스템에서는 한 줄의 끝이 LF(Line Feed)로 이루어지는 반면, 윈도우에서는 줄 하나가 CR(Carriage Return)와 LF(Line Feed), 즉 CRLF로 이루어지기 때문이라고 한다.
Git은 똑똑해서 이를 자동 변환해주는 core.autocrlf 라는 기능을 가지고 있는데, 이 기능을 켜주기만 하면 된다.
윈도우 사용자의 경우
git config --global core.autocrlf true
맥이나 리눅스 사용자의 경우
git config --global core.autocrlf true input
출처: https://blog.jaeyoon.io/2018/01/git-crlf.html
비로써 파일추가와 더불어 pull을 통해 파일 히스토리 병합까지 마치고 나의 깃허브 브런치에 성공적으로 push를 할 수 있게되었다!