linux - como descargar un proyecto de github
No se puede clonar un repo github en Linux a través de HTTPS (8)
Estoy tratando de hacer un simple git clone https://github.com/org/project.git
en un cuadro CentOS pero obtengo:
error: la URL solicitada arrojó el error: 401 al acceder a https://github.com/org/project.git/info/refs
fatal: la solicitud HTTP falló
Nunca me pide mi nombre de usuario / contraseña, solo falla.
Puedo hacer exactamente la misma llamada en mi Mac sin problema, ¿qué me estoy perdiendo?
Asegúrese de tener git 1.7.10 o posterior, ahora solicita el usuario / contraseña correctamente. (Puede descargar la última versión here )
Como dijo JERC, asegúrate de tener una versión actualizada de git. Si solo está utilizando la configuración predeterminada, cuando intente instalar git obtendrá la versión 1.7.1. Además de descargar e instalar manualmente la última versión de get, también puede lograr esto agregando un nuevo repositorio a yum.
De tecadmin.net :
Descargue e instale el repositorio de rpmforge:
# use this for 64-bit
rpm -i ''http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm''
# use this for 32-bit
rpm -i ''http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm''
# then run this in either case
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
Entonces necesitas habilitar los rpmforge-extras. Edite /etc/yum.repos.d/rpmforge.repo
y cambie enabled = 0
a enabled = 1
en [rpmforge-extras]
. El archivo se ve así:
### Name: RPMforge RPM Repository for RHEL 6 - dag
### URL: http://rpmforge.net/
[rpmforge]
name = RHEL $releasever - RPMforge.net - dag
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge
mirrorlist = http://mirrorlist.repoforge.org/el6/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
[rpmforge-extras]
name = RHEL $releasever - RPMforge.net - extras
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/extras
mirrorlist = http://mirrorlist.repoforge.org/el6/mirrors-rpmforge-extras
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-extras
enabled = 0 ####### CHANGE THIS LINE TO "enabled = 1" #############
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
[rpmforge-testing]
name = RHEL $releasever - RPMforge.net - testing
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/testing
mirrorlist = http://mirrorlist.repoforge.org/el6/mirrors-rpmforge-testing
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-testing
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
Una vez que hayas hecho esto, puedes actualizar git con
yum update git
No estoy seguro de por qué, pero luego sugieren deshabilitar rpmforge-extras (cambiar de nuevo a enabled = 0
) y luego ejecutar yum clean all
.
Lo más probable es que necesite usar sudo
para estos comandos.
Esta es la respuesta más tonta a esta pregunta, pero verifica el estado de GitHub . Este me tiene :)
La respuesta fue simple pero no obvia:
En lugar de:
git clone https://github.com/org/project.git
hacer:
git clone https://[email protected]/org/project.git
o (inseguro)
git clone https://username:[email protected]/org/project.git
(Tenga en cuenta que en el caso posterior, su contraseña puede ser visible por otros usuarios en su máquina ejecutando ps u -u $you
y aparecerá de forma clara en el historial de su shell por defecto)
Las 3 formas funcionan en mi Mac, pero solo las 2 últimas funcionaron en la caja remota de Linux. (Pensando en esto, probablemente es porque tenía un nombre de usuario de git global configurado en mi Mac, mientras que en el cuadro de control remoto no? Eso podría haber sido el caso, pero la falta de aviso de un nombre de usuario me hizo tropezar ... .)
No he visto esto documentado en ninguna parte, así que aquí está.
Pude obtener un Git 1.7.1 para trabajar después de bastante tiempo.
Primero, tuve que deshabilitar SSL solo para poder extraer:
git config --global http.sslverify false
Entonces podría clonar
git clone https://github.com/USERNAME/PROJECTNAME.git
Luego, después de agregar y comprometer, NO PODRÍA retroceder. Así que lo hice
git remote -v
origin https://github.com/USERNAME/PROJECTNAME.git (fetch)
origin https://github.com/USERNAME/PROJECTNAME.git (push)
para ver las direcciones pull y push:
Deben modificarse con USERNAME @
git remote set-url origin https://[email protected]/USERNAME/PROJECTNAME.git
Todavía le solicitará una contraseña, que podría agregar con
USERNAME:PASSWORD@github.....
Pero no hagas eso, ya que guardas tu contraseña en texto plano para un robo fácil.
Tuve que hacer esta combinación ya que no pude hacer que SSH funcionara debido a las limitaciones del firewall.
Puede desactivar manualmente ssl verfiy, e intente de nuevo. :)
git config --global http.sslverify false
Tuve el mismo problema y error. En mi caso, fue el https_proxy no establecido. Establecer la variable de entorno https_proxy solucionó el problema.
$ export https_proxy=https://<porxy_addres>:<proxy_port>
Ejemplo:
$ export https_proxy=https://my.proxy.company.com:8000
Espero que esto ayude a alguien.
Tuve que especificar el nombre de usuario para trabajar en la versión 1.7.1 git:
git remote set-url origin https://[email protected]/org/project.git