Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se describen los problemas que pueden producirse al intentar realizar la función de inserción de Git o clonación de Git en un repositorio de Azure DevOps.
Se aplica a: Azure DevOps Services, Azure DevOps Server
Problemas al realizar la clonación de Git o la inserción de Git en los repositorios de Azure DevOps
Al intentar clonar o insertar un repositorio en GitHub, algunos problemas con la configuración del proxy, el certificado SSL o la caché de credenciales podrían provocar un error en la operación de clonación de Git.
Lista de comprobación de solución de problemas
Para identificar la causa de los problemas, siga estos pasos:
Habilite el seguimiento detallado para establecer el nivel detallado de seguimiento para los comandos de Git que está ejecutando.
Establezca las siguientes variables en secuencia y ejecute los comandos de Git para cada variable establecida para obtener más información sobre los errores.
GIT_TRACE=1
GIT_TRACE_PACKET=1
GIT_TRACE_CURL_NO_DATA=1
GIT_CURL_VERBOSE=1
El nivel de seguimiento establecido para estas variables proporciona más información similar al ejemplo siguiente sobre los errores que provocan un problema:
Para más información sobre las variables de entorno de Git, consulte Git Internals - Environment Variables( Variables de entorno de Git).
Causa 1: Git no se puede conectar a través del servidor proxy
Si usa un servidor proxy, pero la configuración de Git no está establecida para conectarse a través del servidor proxy, es posible que vea los mensajes de error 407 o 502. Este problema también se produce cuando la conexión no se puede establecer a través del servidor proxy y aparecen errores similares a "no se puede acceder a <your github url
>:" o "no se pudo resolver el host github.com
".
Solución: Configuración de Git para usar el servidor proxy
Ejecute git config --list
para obtener una lista de toda la configuración de Git en el sistema y compruebe si el servidor proxy está en uso.
Si ve varios archivos de configuración, como el repositorio o la raíz del sistema, ejecute el git config --list --show-origin
comando y, a continuación, vea la ruta de acceso desde donde Git recupera la información de configuración.
Si no encuentra un servidor proxy en la lista de configuraciones, ejecute el git config --global
comando para establecer un servidor proxy en la configuración.
Por ejemplo, http.proxy http://proxyUsername:proxyPassword@proxy.server.com:port
.
Para usar un proxy específico para algunas de las direcciones URL, configure la dirección URL del proxy en la subsección de configuración de Git como http.<url\>.key notation:
similar al ejemplo siguiente:
git config --global
http.https://domain.com.proxy http://proxyUsername:proxyPassword@proxy.server.com:port
Si el proxy usa https
, establezca la configuración de Git con https
la dirección URL del proxy en el ejemplo anterior. De lo contrario, mantenga http
.
Para más información sobre la configuración de Git, consulte Documentación de configuración de Git.
Causa 2: Git usa un certificado autofirmado local
Si Git usa un certificado autofirmado local, es posible que vea el error "problema del certificado SSL: no se puede obtener el certificado del emisor local".
Solución 1: Deshabilitar la comprobación tls/SSL
Si ha instalado una instancia local de Team Foundation Server (TFS) y si desea deshabilitar la comprobación tls/SSL que realiza Git, ejecute el siguiente comando:
git config --global http.sslVerify false
Solución 2: Configuración de los certificados autofirmados en Git
Si desea continuar con la comprobación de TLS/SSL que git realiza, siga estos pasos para agregar el certificado raíz en el Git local:
Exporte el certificado raíz como X.509 codificado en Base 64 (. CER) siguiendo estos pasos:
Abra el explorador Microsoft Edge y escriba la dirección URL del servidor TFS en la barra de direcciones, como
https://<servername>/tfs
.En la barra de direcciones, seleccione el
icono y, a continuación, seleccione el vínculo Conexión es seguro .
Seleccione el
icono para abrir la ventana Certificación .
En la pestaña Ruta de certificación, seleccione el certificado superior izquierdo, que es el certificado raíz.
Seleccione Ver certificado para abrir la ventana Certificado para el certificado raíz.
En la pestaña Detalles , seleccione Copiar en archivo... .
En el Asistente para exportación de certificados, seleccione Siguiente y, a continuación, seleccione X.509 codificado en Base 64 (. CER) formato de archivo que se va a exportar.
Guarde el certificado raíz en el disco local.
Configure Git para usar el directorio local para el almacén de certificados de Git siguiendo estos pasos:
Vaya a la ruta de acceso C:\Program Files\Git\bin en el disco local y, a continuación, realice una copia del archivo curl-ca-bundle.crt .
Nota:
- Al instalar Git para Windows (
msysgit
) en el dispositivo, se almacena un archivo curl-ca-bundle.crt en el directorio Archivos de programa. Este archivo es el almacén de certificados raíz de git.exe que contiene todos los certificados que git confía. - El archivo curl-ca-bundle.crt , que se almacena por dispositivo, es privado para el cliente local de Windows. El archivo de texto tiene finales de línea UNIX (
\n
). - En la serie Git para Windows 2.x, la ruta de acceso cambiará a C:\Archivos de programa (x86)\Git\mingw32\ssl\certs\ca-bundle.crt o C:\Archivos de programa\Git\mingw64\ssl\certs\ca-bundle.crt. Si usa un cliente de Windows de 32 bits, puede corregir la ruta de acceso de la carpeta de modo que la parte Archivos de programa no aparezca con x86.
- Al instalar Git para Windows (
Copie el archivo curl-ca-bundle.crt en el directorio del perfil de usuario (C:\Users\<yourname>). O bien, ejecute un comando de copia similar al
copy "C:\Program Files (x86)\Git\bin\curl-ca-bundle.crt" C:\Users\<yourname>
ejemplo.Ejecute el siguiente comando para configurar Git para usar la copia local del almacén de certificados desde el cliente de Windows:
git config --global http.sslCAInfo C:/Users/<yourname>/curl-ca-bundle.crt
Agregue el certificado raíz exportado a la copia local del almacén de certificados de Git siguiendo estos pasos:
Abra el certificado raíz exportado en el Bloc de notas y, a continuación, copie todo el contenido en el Portapapeles.
Abra el archivo curl-ca-bundle.crt ; para ello, vaya a la ruta de acceso C:/Users/<yourname>/curl-ca-bundle.crt en un editor de texto.
Sugerencia
Puede usar la herramienta unix2dos para cambiar los finales de línea del archivo de \n a \r\n y poder abrir el archivo en el Bloc de notas.
Agregue una entrada para el certificado raíz al final y pegue el contenido del certificado en el archivo curl-ca-bundle.crt .
Guarde el archivo curl-ca-bundle.crt .
Realice la operación de clonación para comprobar si se ha resuelto el error SSL.
Causa 3: Problemas de caché de credenciales o errores de autenticación
Si ha cambiado el nombre de la cuenta o la contraseña de dominio, o si recibe un error de autenticación, podría haber un problema de autenticación y de la caché de credenciales.
Solución: Restablecimiento del administrador de credenciales de Git (GCM)
Para resolver los problemas de caché de credenciales o errores de autenticación, siga la lista de comprobación de solución de problemas para obtener la información de error y siga estos pasos:
- Ejecute el
git config --list
comando y compruebe si usa el Administrador de credenciales de Git (GCM). Si se establece encredential.helper
el administrador, GCM está en uso. - Restablezca el GCM siguiendo estos pasos:
- Ejecute el
git config --global --unset credential.helper
comando para anular el GCM. - Ejecute el
git config credential.helper manager
comando para volver a establecer el GCM. Como alternativa, siga estos pasos para eliminar primero la memoria caché de credenciales:- Cuando no se establece, busque Administrador de credenciales en la búsqueda de Windows, seleccione Abrir y, a continuación, quite todas las credenciales que sean para un repositorio de Git.
- Vaya a %localappdata%/GitCredentialManager path (Ruta de acceso de GitCredentialManager ) y elimine el archivo tenant.cache .
- Vuelva a establecer el GCM ejecutando el
git config credential.helper manager
comando .
- Ejecute el
- Realice la operación de clonación para comprobar si se ha resuelto el problema.
Nota: Dependiendo de la versión de Git para Windows, el credential.helper
valor sería diferente. Consulte la tabla siguiente para más detalles:
Versiones de Git para Windows | Administrador de credenciales de Git para Windows | Git Credential Manager Core | Administrador de credenciales de Git (se ha cambiado el nombre de GCM Core) |
---|---|---|---|
2.27 y versiones anteriores | manager |
||
De 2.28 a 2.33.0 | manager (opcional) |
manager-core (opcional) |
|
2.33.1 a 2.34.0 | manager-core |
||
2.34.1 a 2.38 | manager-core |
||
2.39 y versiones posteriores | manager |