Programing

Git : 치명적 : 현재 분기 마스터에 여러 업스트림 분기가있어 푸시를 거부합니다.

lottogame 2020. 11. 17. 07:37
반응형

Git : 치명적 : 현재 분기 마스터에 여러 업스트림 분기가있어 푸시를 거부합니다.


나는 할 때마다 git push아무것도 하지 않는 이상한 문제가 있습니다.

fatal: The current branch master has multiple upstream branches, refusing to push.

내가 할 때 git push -u origin master추적 분기로 설정하는 것 같습니다.

Branch master set up to track remote branch master from origin.

그러나 다음에 시도 git push하면 다시는 이것을 거부합니다. 나는 구글을 시도했지만 문제가 상당히 새로운 것 같고이 동작에 대한 설명을 찾을 수 없습니다. 아이디어?

최신 정보: ./git/config

[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = gitosis@xxxx.xx:milk.git
[branch "master"]
    remote = origin
    merge = refs/heads/master

갱신 2 : 와 해결 git config remote.origin.push HEAD에 나타난 다음 줄 .git/config[remote "origin"]섹션 :

    push = HEAD

업데이트 3 :

$ git branch -vv
  billing      633c796 [origin/billing: behind 889] links
* master       1a0de50 [origin/master: ahead 1] more fixes
  new_master   3b880d7 [origin/new_master] branches diverged
  photo_stacks 29c8f0d [origin/photo_stacks] 1st try
  responsive   1dad980 [origin/responsive] update

$ git push
fatal: The current branch master has multiple upstream branches, refusing to push.

다음을 수행 할 수 있습니다.

git config remote.origin.push HEAD

마스터 브랜치에서 인수없이 푸시하면 오류 메시지가 표시 될 수 있습니다. 회귀 문제인지 항상 그랬는지 확실하지 않습니다.


실행 git config -l이 branch.master * 참조 부분이 중복 될 수있는 [지점 "마스터"] 포함하는 여러 줄이있는 경우와 모양은 볼 ~/.gitconfig.git/config.에서 삭제 한 ~/.gitconfig나를 위해 고정하여 여러개의 상류 지점 탐지를.


푸시 할 분기를 지정해야합니다. git push로컬 브랜치가 추적하는 모든 참조 및 태그를 자동으로 푸시하려고합니다. 서버의 온라인 지점이 앞으로 나아 갔을 가능성이 있습니다. 따라서 이러한 상황이 발생할 수 있습니다. 당신은 단순히 사용해야합니다

git push origin master

또한 변경 사항을 조정하려면 git pull로컬 참조를 서버의 참조로 업데이트합니다.


좋아, 새로운 리포지토리로 두 번 처리 한 후 답변이 있습니다.

자식 원격 -v

git remote rm (다른 리모컨을 추가 한 경우 origin 이외의 모든 것)

자식 원격 rm 원점

! 경고 : 하나 이상의 branch.master.remote <-이것은 좋습니다

git remote add origin git@github.com : yourname / yourrepo

당기기 + 밀기 = 고정


branch.master.remotegit 설정에 2 개 이상이 있기 때문일 가능성이 큽니다 . 하나는 전역 git 구성에서, 다른 하나는 repo 로컬 git 구성에서 가져옵니다.

git 구성에이 중 2 개가 지정되어있는 경우 git은 정의 된 후자가 전자를 재정의해야하지만 둘 중 하나를 가정하지 않는 것이 안전합니다.

복제하는 최신 저장소는 구성을 로컬에 포함해야하지만 전역 git 구성도 branch.master.remote정의 했을 가능성이 높습니다 .

글로벌 구성에 설정되어 있는지 확인하려면 다음을 사용하십시오.

git config --global --list | grep branch.master

You can remove or comment out branch section in your git global config and you should be good to go.

git config --global --remove-section branch.master

This will remove [branch "master"] section entirely.

If you want to keep it in your global config just in case, you can rename it to some other branch that you probably won't use.

git config --global --rename-section branch.master branch.someothername

With this, you shouldn't get multiple upstream branches error when you do git push on master branch.

git remote show origin also shouldn't cause a warning anymore.

참고URL : https://stackoverflow.com/questions/13030714/git-fatal-the-current-branch-master-has-multiple-upstream-branches-refusing-t

반응형