2011-02-09 22 views
17

estoy tratando de actualizar mi webbynode tirando de github pero tengo el siguiente mensaje:especificando rama git para la distancia

te pidió que tire del mando a distancia '[email protected]: sigbackup/GSAPP. git ', pero no especificó una rama. Como este no es el control remoto configurado por defecto para su sucursal actual, debe especificar una bifurcación en la línea de comando.

Así que ha obtenido este foro de ayuda y me encontré con algunos comentarios sobre .git/config archivo pero la mía se ve ya muy bien (al menos para mí):

[core] 
     repositoryformatversion = 0 
     filemode = true 
     bare = false 
     logallrefupdates = true 
[remote "origin"] 
     fetch = +refs/heads/*:refs/remotes/origin/* 
     url = [email protected]:sigbackup/gsapp.git 
[branch "master"] 
     remote = origin 
     merge = refs/heads/master 
[branch "origin"] 
     remote = origin 
     merge = refs/heads/master 

Me estoy perdiendo algo? ¿Alguna idea de cómo puedo resolverlo?

PS I también trató git pull origin [email protected]:sigbackup/gsapp.git y tengo

fatal: No se pudo encontrar ref remota [email protected]

+0

¿Qué comando ejecutó la primera vez? –

+0

Tengo una pregunta similar en [especifique-default-branch-for-a-non-default-remote-for-pull-rebase] (http://stackoverflow.com/questions/7456709/specify-default-branch-for -a-non-default-remote-for-pull-rebase), pero queremos hacer esto sin cambiar el control remoto predeterminado ni listar explícitamente la rama. – studgeek

Respuesta

21

Qué rama local has comprobado?

¿Qué muestra git status?

Probablemente esté trabajando en alguna otra rama además de la rama principal local. Si se desea obtener nuevas confirmaciones de GitHub y unirlos a la rama local master, usted tiene que:

git checkout master 
git pull 

si quieres esas confirmaciones de la rama, sobre la que se está trabajando, se necesita:

git pull origin master 

Estuviste cerca en tu intento de PS, pero el último parámetro debe ser el nombre de la sucursal, no el URL del informe.


También se puede simplemente ir a buscar nuevas confirmaciones de GitHub, y no se combinan en cualquier sucursal local, con:

git fetch origin 

A continuación, revise los cambios con git diff, git log, etc, y combinar más tarde a la rama actualmente desprotegido con:

git merge origin/master 
+1

Gracias por su respuesta. git checkout master git pull origen master Resolvió mi problema. – macsig

+0

Los nombres de las sucursales eran diferentes para mí, pero git merge / desde mi repositorio bifurcado trabajado. En el contexto de la pregunta original es un control remoto que apunta al viejo "repositorio de trabajo" directamente en el disco duro local que tiene los cambios que uno quiere reproducir. –

3

Es extraño que tiene una rama llamada origin. origin se utiliza para nombrar un remoto creado automáticamente durante git clone; obtendrá problemas para tener que desambiguar origin -the-branch y origin -the-remote. ¿Agregaste la rama manualmente al .git/config? ¿Qué comandos ejecutó? Sospecho que te equivocaste.