치명적: 현재 분기 마스터는 Git에서 업스트림 분기 오류가 없습니다.
이 기사에서는 Git에서 치명적: 현재 브랜치 마스터에 업스트림 브랜치가 없습니다
오류를 해결하는 데 사용할 수 있는 다양한 방법에 대해 설명합니다. 일반적으로 새 로컬 분기를 만들고 일부 커밋을 만들고 원격 저장소로 푸시를 시도할 때 이 오류가 발생합니다.
기본적으로 Git은 로컬 리포지토리에 생성할 때 원격 리포지토리에 해당 브랜치를 생성하도록 구성되어 있지 않습니다.
오류를 해결하는 데 사용할 수 있는 세 가지 방법을 살펴보겠습니다.
Git에서 치명적: 현재 분기 마스터에 업스트림 분기가 없습니다
오류 수정
쉬운 연습을 위해 로컬 리포지토리에 새 분기를 만들고 일부 커밋을 만들고 푸시를 시도하여 Git에서 치명적: 현재 분기 마스터에 업스트림 분기가 없습니다
오류가 발생하는 시나리오를 시뮬레이트합니다.
$ git checkout -b Dev2.1
우리는 몇 가지를 변경하고 커밋했습니다. 원격 저장소에 푸시해 봅시다.
$ git push
다음은 이 오류를 해결하는 데 사용할 수 있는 세 가지 방법입니다.
첫 번째 방법은 Git에서 제안한 방법입니다. 그러나 곧 보게 되겠지만 이 명령을 사용하지 않는 것이 좋습니다. 먼저 이 명령이 어떻게 작동하는지 살펴보겠습니다.
오류를 해결하기 위해 다음을 실행합니다.
$ git push --set-upstream origin Dev2.1
이 명령은 로컬 분기를 추적할 원격 저장소에 Dev2.1
분기를 설정합니다. 그러나 이 방법은 저장소에서 예상치 못한 이상한 결과를 초래할 수 있습니다.
두 번째 방법을 확인해 봅시다.
다음을 사용할 수도 있습니다.
$ git push -u origin Dev2.1
이 명령은 로컬 브랜치와 동일한 이름으로 원격 브랜치를 생성합니다. 오류가 발생하면 아래와 같이 명령에 all
플래그를 추가합니다.
$ git push -u origin --all
git push --set-upstream
명령 대신 -u
플래그를 사용하는 것이 좋습니다.
위의 방법은 현재 문제를 해결합니다. 영구적인 솔루션을 원하면 어떻게 해야 합니까?
다행스럽게도 Git은 매우 유연합니다. Git 구성 파일을 조정하여 세 번째 방법으로 이동하는 영구적인 솔루션을 얻을 수 있습니다.
아래 명령을 실행하여 로컬 브랜치를 생성할 때 원격 브랜치를 생성하도록 Git을 구성합니다.
$ git config --global push.default current
이제 이 성가신 오류를 다시 처리하지 않고 git push
명령만 사용할 수 있습니다.
결론적으로 로컬 브랜치를 생성할 때 해당 원격 브랜치를 생성하도록 Git을 구성하지 않은 경우 치명적: 현재 브랜치 마스터에 업스트림 브랜치가 없습니다
오류가 발생합니다.
이 오류를 해결하기 위해 사용할 수 있는 다양한 방법을 살펴보았습니다. 이제 무엇을 피해야 하는지 알게 되었습니다.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn