git pull remote branch no puede encontrar la reference remota

No estoy seguro de por qué esto no funciona. Cuando hago git branch -a , esto es lo que veo:

enter image description here

Estoy tratando de extraer de DownloadManager en el repository de GitHub en línea. Yo he tratado

  • git pull, pero luego se queja de no saber de qué twig extraer
  • git pull origen, no sabe qué twig
  • git pull origin downloadmanager fatal: Couldn't find remote ref downloadmanager. Unexpected end of commands stream fatal: Couldn't find remote ref downloadmanager. Unexpected end of commands stream
  • Los controles remotos de origen de git pull / origen / DownloadManager 'fatal couldn't find remote ref remotes/origin/DownloadManager. Unexpected end of commands stream 'fatal couldn't find remote ref remotes/origin/DownloadManager. Unexpected end of commands stream

¿Se me escapa algo? En Xcode, cuando trato de conectarme al repository, nunca aparece nada. Pude presionar para hacerlo en el pasado. Pero no puedo presionar nuevamente hasta que saco los cambios más recientes.

Tenga cuidado: ¡tiene mezcla de mayúsculas entre sucursales locales y remotas!

Supongamos que ahora está en el administrador de descargas de la sucursal local ( git checkout downloadmanager )

Tienes las siguientes opciones:

  1. Especifique la bifurcación remota en los commands de extracción / inserción cada vez (distingue entre mayúsculas y minúsculas):

    git pull origin DownloadManager

    o

    git pull origin downloadmanager:DownloadManager


  1. Especifique la twig de seguimiento en la próxima inserción:

    git push -u origin DownloadManager

    ( -u es una forma abreviada de –set-upstream )

    esto persistirá en Downloadmanager: el enlace de DownloadManager en config automáticamente (el mismo resultado, como el siguiente paso).


  1. Establecer en git config twig de seguimiento remoto pnetworkingeterminada:

    git branch -u downloadmanager origin/DownloadManager

    (nota, dado que git 1.8 para el command de sucursal -u es una forma abreviada de –set-upstream-to , que es un poco diferente de obsoleto –set-upstream )

    o edite la configuration manualmente (prefiero esta forma):

    git config --local -e

    -> Esto abrirá el editor. Añada el bloque a continuación (adivinar, después del bloque "maestro"):

     [branch "downloadmanager"] remote = origin merge = refs/heads/DownloadManager 

y después de cualquiera de esos pasos, puede usarlo fácilmente:

git pull

Si usa TortoiseGit: RightHaga clic en repository -> TortoiseGit -> Configuración -> Git -> Editar local .git / config

El nombre de la twig en Git es sensible a mayúsculas y minúsculas. Para ver los nombres de sus sucursales que Git 've' (incluida la carcasa correcta), use:

 git branch -vv 

… y ahora que puede ver el nombre de la twig correcta para usar, haga esto:

 git pull origin BranchName 

donde 'BranchName' es el nombre de su sucursal. Asegúrese de hacer coincidir la caja correctamente

Entonces, en el caso del OP (Póster original), el command sería:

 git pull origin DownloadManager 

Este error ocurre porque el repository local no puede identificar la twig remota por primera vez. Entonces debes hacerlo primero. Se puede hacer usando los siguientes commands:

 git remote add origin 'url_of_your_github_project' git push -u origin master 

Necesita configurar su sucursal local para rastrear la sucursal remota, lo que no ocurrirá automáticamente si tienen capitalizaciones diferentes.

Tratar:

 git branch --set-upstream downloadmanager origin/DownloadManager git pull 

Esto se debe a que el nombre de su sucursal remota es "DownloadManager". Supongo que cuando realiza la compra de su sucursal, le da a esta sucursal un nuevo nombre, "downloadmanager".

Pero este es solo su nombre local, no el nombre de reference remoto.