2011-08-01 8 views
12

Esta mañana fui a hacer un git fetch y obtuve el siguiente error:Git ha olvidado el repositorio remoto voy a buscar desde/empuje para

fatal: No remote repository specified. Please, specify either a URL or a remote name from which new revisions should be fetched.

Esto funcionaba bien. Parece que git olvidó el enlace entre (todas) mis sucursales y el repositorio.
Escribir git remote -v no devuelve nada.
Estaba trabajando al final de la semana pasada, y lo único que puedo pensar que he cambiado fue instalar la última versión de GitExtensions. Sin embargo, en este momento estoy más preocupado sobre si hay alguna manera de recuperar la información del repositorio.
¿Alguna idea?

Actualización:
Mi archivo .git/config estaba vacío. Aunque no conozco la causa, pude acceder al escritorio remoto a otra computadora en la empresa y recuperar la sección "remota" de su configuración.
he actualizado mi archivo de configuración, y hasta ahora parece que se está trabajando :-)

Actualización 2: también he necesitado volver a vincular las ramas a través del origen:

git config branch.develop.remote origin 
git config branch.develop.merge refs/heads/develop 

etc.

+0

¿Todavía conocen la URL remota? – Thilo

+0

¿Tiene otro informe por casualidad donde lo clonó? Además, ¿dónde lo tienes alojado de forma remota? ¿Esto se organiza de forma privada a través de gitosis? – chrisjlee

+0

@Thilo Trabajo de forma remota en el otro lado del mundo para el equipo principal. Tendré que obtenerlo del administrador de la red cuando comience el día – hamishmcn

Respuesta

4

La información remota se debe almacenar en el archivo .git/config, verifique ese archivo y vea si está dañado. Si es usted podría tener que volver a añadir cada distancia que tenía antes o hacer una salida más limpia, si está allí, podría haber un error en la versión GitExtension ...

+0

Gracias: .git/config está vacío ... Me pregunto ahora si eliminé accidentalmente un campo al mirar a través de la configuración después de instalar en. – hamishmcn

8
  1. Puede echar un vistazo en .git/config y configúralo.

  2. También puede hacer que su rama local pista de nuevo su sucursal remota escribiendo

    git branch --set-upstream <localbranch> <remotebranch>

Al escribir git fetch la sección local buscará los códigos de aquellos seguimiento rama remota.

+0

Gracias, # 2 me lo arregló, estaba obteniendo este error "No hay repositorio remoto especificado." – Flupkear

+2

¿Me puede dar un ejemplo? Como 'branch --set-upstream master master/master'? –

6

Parece una pregunta muy antigua, pero desea actualizar la respuesta de Kit Ho con una ligera modificación. Puede ser útil para alguien.

git branch --set-upstream <localbranch> <remotebranch> 

está obsoleto a partir de la versión de Git 1.9.2. Esta es la sintaxis correcta ahora,

git branch --set-upstream-to=<upstream> 

Un ejemplo sería,

git branch --set-upstream-to=originremote/testbranch 
Cuestiones relacionadas