원격에서 git pull을 받았지만 그런 참조가 가져 오지 않았습니까?


69

디스크에 git mirror가 있으며 git pull을 사용하여 repo를 업데이트하려고하면 오류 메시지가 나타납니다.

 Your configuration specifies to merge with the ref '3.5/master' from the remote, but no such ref was fetched.

또한 나에게 준다 :

  1ce6dac..a5ab7de  3.4/bfq    -> origin/3.4/bfq
  fa52ab1..f5d387e  3.4/master -> origin/3.4/master
  398cc33..1c3000a  3.4/upstream-updates -> origin/3.4/upstream-updates
  d01630e..6b612f7  3.7/master -> origin/3.7/master
  491e78a..f49f47f  3.7/misc   -> origin/3.7/misc
  5b7be63..356d8c6  3.7/upstream-updates -> origin/3.7/upstream-updates
  636753a..027c1f3  3.8/master -> origin/3.8/master
  b8e524c..cfcf7b5  3.8/misc   -> origin/3.8/misc
  * [neuer Zweig]     3.8/upstream-updates -> origin/3.8/upstream-updates

make menuconfig를 실행하면 Linux 버전 3.5.7이 표시됩니까? 이것은 무엇을 의미 하는가? 리포지토리를 어떻게 업데이트 할 수 있습니까?

답변:


58

현재 지점 ( git branch)을 확인하고 해당 지점의 구성 ( )을 확인하십시오 .../.git/config. 잘못된 지점에 있거나 구성이 존재하지 않는 원격 지점과 병합하도록 구성되어 있습니다.


22
로컬 저장소에 존재하지 않는 원격 분기 참조를 제거하려면을 사용하십시오 git remote prune origin.
jevon

7
분기의 "구성을 확인"하는 다른 방법은 다음과 같습니다 git branch -vv. 분기의 관련 "원격"을 표시합니다.
offby1

28

제 경우에는 로컬 지점이 원격 지점을 추적하도록 설정되지 않았습니다. 수동으로 실행해야했습니다.

git pull origin remotebranch

다음에 푸시 할 때 "git push -u"를 수행하여 올바른 추적을 설정하십시오.


다음을 사용하여 생성 된 빈 저장소를 처음 복제 할 때도 마찬가지입니다.git init --bare
Cyclonecode

10

필자의 경우 로컬 지점과 원격 지점의 대문자가 다릅니다.

이 문제를 해결하려면 내 지역 지점을 삭제 $ git branch -d branch-name한 후, 사용하여 원격 지점을 다시 체크 아웃 $ git fetch하고 $ git checkout Branch-name.


깨끗하고 간단하며 잘 작동합니다. 감사합니다.
Balasubramani M

cmd 줄 에이 오류가 발생했습니다. 리베이스로 SmartGit을 시험 해보고 지나갔습니다.
P.Brian.Mackey

이 번 대신 삭제 지점 및 재 체크 아웃 지점 매번 수행 올바른 대문자를 당신의 /.git/config에
wz366

2

팀의 다른 누군가가 단순히 브랜치를 병합하고 삭제했을 수 있습니다 (일반적으로 병합 후 수행됨). 저장소에 지점을 만들고 다시 시도하십시오. 회사에서 가끔씩 발생합니다 (비트 버킷은 기본적으로 병합 및 삭제).


1

필자의 경우 (일반적인주의 사항) 이미 적절한 이름의 분기가 있었으므로 remote = origin.git / config 에만 추가 해야했습니다.

[branch "sparql"]
    merge = refs/heads/sparql
    remote = origin # <-- added


1

디스크 공간이 부족할 때 동일한 오류가 발생했습니다. 볼륨 크기를 조정 한 후 오류가 발생했습니다.


0

Windows에서 나타나는 케이싱 문제로 인해이 문제가 발생했습니다.

내 Git 구성은 다음과 같습니다.

[branch "Bug/some_branch"]
  remote = origin
  merge = refs/heads/Bug/some_branch

서버에서 "버그"및 "버그"는 여러 분기의 일부로 존재했습니다. 파일 시스템 맵핑으로 인해 Windows는 한 번에 하나만 보유 할 수 있습니다. 따라서 서버 버전과 일치하도록 구성을 수동으로 업데이트하여 실제로 풀 문제를 해결했습니다.

[branch "Bug/some_branch"]
  remote = origin
  merge = refs/heads/bug/some_branch

0

지점이 사라지면

$ git status
On branch blah_gone_now
Your branch is based on 'origin/1234/blah_gone_now', but the upstream is gone.
  (use "git branch --unset-upstream" to fixup)

$ git branch --unset-upstream

그런 다음 체크 아웃 마스터 또는 필요한 것

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.