[git] push 시 기억해야할 점 기록 master 와 main | dasfef

2023.05.01

개인 기록용입니다 :) 더욱 자세하고 구체적인 정보는 원문 정보를 참고해주세요


최근은 아니지만 master - slave 라는 용어 자체가 문제될 수 있어 master -> main 으로 변경되었다고 한다 default로 설정되던 master branch 는 이제 사용하면 안 된다! 그런데 문제가 발생한다​ 원격에서는 master -> main 으로 변경이 되었지만 로컬에서 하려고 하면 master 를 그대로 가지고 있어 tracking 이 불가하다 실험해보자

test 할 폴더 생성 후 아무 메모장 파일 생성 후 git init 을 해준다 그리고 아무 원격 레포지토리에 연결해주고

$ git init
$ git remote add origin {http}

pull 을 해준다

$ git pull origin main

user 설정을 해주고

$ git config user.name "NAME"
$ git config user.email "EMAIL"

add 와 commit 을 해준다

$ git add .
$ git commit -m "MESSAGE"

그리고 push 를 해주면 이런 오류가 발생한다

error: failed to push some refs to 'ADDRESS'

오호 통재라 이게 바로 위에 말했던 master -> main 으로 branch 기본 이름이 변경되면서 발생하는 오류라고 한다 이는 로컬에서는 기존대로 master branch로 설정하고 있으나 원격에서는 main 으로 잡고 있기 때문이다 해결해주기 위한 명령어는 간단하다

$ git branch -M main

해당 명령어를 통해 로컬 branch 이름을 main 으로 설정해주면 간단하게 해결할 수 있다 우선 내가 지금 위치하고 있는 로컬 branch 의 이름을 꼭 파악해보고

$ git branch

실행해주자

main 으로 변경된 로컬 branch 이름

push 가 잘 되었고

원격에도 잘 되었음을 확인할 수 있다 만일 push를 했는데도 원격으로 넘어가지 않는다면 add 와 commit 을 다시 해보고 push 해보자🙃