19 votos

git detrás de proxy: cabeza remota se refiere a ref inexistente, a la comprobación

Cuando se trata de clonar CUALQUIER repositorio a través de https desde github, obtenemos:

git clone https://github.com/rails/rails.git
Cloning into rails...
remote HEAD refers to nonexistent ref, unable to checkout

Nuestro servidor está detrás de un proxy. Hemos definido la variable de entorno http_proxy y https_proxy adecuadamente. Todas las demás funciones están trabajando.

versión git es 1.7.5.4

Servidor Ubuntu Server 11.04.

Tenga en cuenta que desde que esto sucede con CADA repositorio en github hemos intentado, creemos firmemente que no es un problema con los árbitros en el repositorio. Hemos tratado bien conocidos tales repositorios como jquery y rieles - si el problema estaba en aquellos repositorios que habría un montón de gente quejándose. Creo firmemente que el problema es con git y el proxy, pero todo mi google no ha conducido a una solución.

Como datos adicionales, los clones parecen funcionar bien si son http. Es sólo el https clones que fallan con este error.

Tenga en cuenta que no creo que esta pregunta es un duplicado, ya que las otras preguntas con este error de centrarse en los problemas con el repositorio que no trabajo con git y un proxy.

19voto

wadesworld Puntos 6476

He tropezado a través de la solución a este problema a través de este post:

http://comments.gmane.org/gmane.comp.version-control.git/185459

El problema al parecer es un error en el libcurl versión instalada en el servidor de Ubuntu 11.04. Simplemente ejecutando apt-get install libcurl3-gnutls no fue suficiente para resolver el problema, ya que simplemente se informó de la última versión ya está instalada.

Para resolver el problema, tuve que instalar manualmente la última libcurl3-gnutls, y dos dependencias, como se ve a continuación (obviamente, después de haber descargado a mi sistema por primera vez):

sudo dpkg -i libp11-kit0_0.6-0ubuntu2_amd64.deb
sudo dpkg -i libgnutls26_2.12.14-3_amd64.deb
sudo dpkg -i libcurl3-gnutls_7.22.0-3ubuntu1_amd64.deb

Espero que esto ayude a alguien.

10voto

Eric D. White Puntos 101

los paquetes se señaló anteriormente, puede encontrarse aquí:

He utilizado estas versiones y fue capaz de utilizar git detrás de un proxy sin problema:

$ sudo dpkg -i libp11-kit0_0.10-1_amd64.deb libgnutls26_2.12.14-5ubuntu2_amd64.deb libcurl3-gnutls_7.22.0-3ubuntu2_amd64.deb

9voto

Alexey Romanov Puntos 39124

Para evitar este problema en el bug de Ubuntu vinculado:

Agregue lo siguiente al ~/.gitconfig o /etc/gitconfig

# Workaround for bug when using SSL and HTTP proxy (LP #940431)
[url "http://"]
 insteadOf = "https://"

Ya no es necesario a partir de 12.04.

0voto

arsane Puntos 6500

Otra solución más sencilla sería:

la regresión de libcurl3 de 7.21.0 a 7.19.5.

Descargar de aquí:

amd64: http://launchpadlibrarian.net/30289951/libcurl3-gnutls_7.19.5-1ubuntu2_amd64.deb

i386: http://launchpadlibrarian.net/30287711/libcurl3-gnutls_7.19.5-1ubuntu2_i386.deb

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X