git pull do controle remoto, mas tal ref não foi buscado?

59

Eu tenho um git mirror no meu disco e quando eu quero atualizar meu repositório com git pull ele me dá uma mensagem de erro:

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

Também me dá:

  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

Quando eu executo o make menuconfig ele me dá a versão 3.5.7 do Linux? O que isto significa? Como posso atualizar meu repositório?

    
por Bytemain 01.03.2013 / 14:35

8 respostas

56

Verifique a ramificação em que você está ( git branch ), verifique a configuração dessa ramificação (em .../.git/config ), você provavelmente está na ramificação errada ou sua configuração diz para mesclar com um (agora?) não ramo remoto inexistente.

    
por 04.03.2013 / 21:51
24

No meu caso, minha filial local não foi configurada para rastrear a ramificação remota. Eu tive que executar manualmente:

git pull origin remotebranch

Da próxima vez que você fizer um push, faça "git push -u" para configurar o rastreamento correto.

    
por 13.04.2014 / 03:38
10

No meu caso, minha filial local e filial remota tinham letras maiúsculas diferentes.

Para resolver isso, excluí minha filial local $ git branch -d branch-name e, em seguida, fiz o check-out da ramificação remota novamente usando $ git fetch e $ git checkout Branch-name .

    
por 07.11.2014 / 20:58
2

É possível que outra pessoa em sua equipe simplesmente mescle sua ramificação e a exclua (geralmente feita depois da fusão). Você pode fazer o branch no repositório e tentar novamente. Acontece comigo na minha empresa de vez em quando (o padrão do bitbucket é mesclar e excluir).

    
por 21.09.2015 / 23:08
1

No meu caso (a ressalva usual), eu já tinha uma ramificação do nome apropriado, então eu só tinha que adicionar remote = origin ao meu .git / config:

[branch "sparql"]
    merge = refs/heads/sparql
    remote = origin # <-- added
    
por 09.02.2015 / 10:36
1

Eu tive o mesmo erro ao ficar sem espaço em disco. Depois de redimensionar o volume, o erro desapareceu.

    
por 22.11.2016 / 11:24
0

No meu caso eu tive que chamar os seguintes comandos manualmente:

git fetch origin
git merge origin/master

(c) link

    
por 11.10.2016 / 04:03
0

Eu recebi este problema devido a um problema de caixa que se manifesta no Windows.

Minha configuração do Git parecia:

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

No servidor, tanto "Bug" quanto "bug" existiam como parte de várias ramificações. O Windows só pode manter um desses por vez, devido ao mapeamento do sistema de arquivos. Portanto, atualizei manualmente minha configuração para corresponder à versão do servidor, o que realmente resolveu o problema de pull:

[branch "Bug/some_branch"]
  remote = origin
  merge = refs/heads/bug/some_branch
    
por 09.07.2018 / 14:34

Tags