Una colección completa de problemas y soluciones encontrados en git accediendo a github bajo Linux (demasiados, actualice lentamente)

Tabla de contenido

Tabla de contenido

1. ssh -T [email protected] está configurado con una clave pública y aún solicita la contraseña de [email protected]: Permiso denegado, inténtelo de nuevo. 

 2. ssh: conéctese al host github.com puerto 22: conexión rechazada

 3. git报错Error al conectarse al puerto 127.0.0.1 1080: Conexión rechazada

4. La solución para quedarse atascado cuando git push (sin error o salida automática durante mucho tiempo)_Habilidades relacionadas_Programación en red-Programación Inn

5. Fatal: el maestro de rama actual no tiene una solución de rama ascendente_Blog de Xiaozhi-CSDN

6. https://www.cnblogs.com/princesong/p/9885857.html

7. Verificación de seguridad - Zhihu

8. 完美解决remoto: el 13 de agosto de 2021 se eliminó la compatibilidad con la autenticación de contraseña. Utilice una persona | LongSheng



        He encontrado muchos problemas engañosos y he consultado una gran cantidad de información en Internet para resumir. El contenido simplificado relevante es el siguiente, y algunos enlaces de información se colocarán debajo de cada elemento. Espero que pueda ayudar a las personas que están sufriendo como yo.

        Solo para mencionar, básicamente no hay problema en usar git para acceder a Github de acuerdo con el gran método del blogger:

Pasos para usar GitHub en Ubuntu_xyyshh's Blog-CSDN Blog_github ubuntu

        Los siguientes son los problemas y soluciones encontradas:

1.   ssh -T [email protected] está configurado con una clave pública y aún solicita la contraseña de [email protected]: Permiso denegado, inténtelo de nuevo. 

        Use el comando ssh -Tv [email protected]  para probar el enlace e imprimir el registro. Si no hay ningún problema después de verificar, puede verificar si es un problema de firewall (si le da pereza leer, puede presionar directamente los pasos a continuación para probar el agua), ver a continuación: 

Ingrese este comando para probarlo.Si no se informa ningún error, es probable que sea un problema con el firewall .

ssh -T -p 443 [email protected]

Abra el archivo de configuración en su carpeta .ssh y agregue el siguiente contenido en la parte inferior. Si no encuentra este archivo en su carpeta .ssh, cree uno nuevo en su carpeta .ssh.

Host github.com
Nombre de host ssh.github.com
Puerto 443
Usuario git

Intente ssh -T [email protected] nuevamente , probablemente estará bien.

Para obtener más información, consulte este documento oficial  Uso de SSH a través del puerto HTTPS - GitHub Docs 

La gran conexión de un blogger: github configuró la clave pública y aún solicita la contraseña de [email protected]: Permiso denegado, intente nuevamente.

 2. ssh: conéctese al host github.com puerto 22: conexión rechazada

método:

(1) Usar el puerto 443 de Github

        El puerto 22 puede estar bloqueado por el firewall, puede intentar conectarse al puerto 443 de GitHub. Esta solución es la misma que la Pregunta 1, consulte los pasos de la Pregunta 1 para obtener más detalles.

        Nuevamente, el requisito previo para que esta solución sea efectiva es que ssh -T -p 443 [email protected]no habrá indicaciones después de ejecutar el comando connection refused, por lo que aquellos que quieran probar esta solución primero deben ejecutar este comando para probarlo.

(2) Use el protocolo https en lugar del protocolo ssh

En su directorio de repositorio local de GitHub , ejecute:

$ git configuración --local -e

Luego, cambie el elemento de configuración de URL dentro del formato git al formato https

poner url = [email protected]:nombre de usuario/repo.git

Cambiar a url = https://github.com/username/repo.git

 Este método en realidad modifica el  archivo ./git/config en el repositorio y el directorio

(3) Modificar DNS

Si ninguno de los métodos anteriores funciona, hay otro método (este método también me salvó la vida):

Utilice ssh -vel comando para imprimir registros detallados.

Descubrí que la dirección para conectarme a http://github.com es en realidad ::1y 127.0.0.1. La primera es la dirección de host local de IPV6 y la segunda es la dirección de host local de IPV4. En este punto, el problema es muy claro. Hay un problema con la resolución de DNS . Como resultado, el nombre de dominio de http://github.com se resuelve en la dirección IP de localhost y, naturalmente, es imposible conectarse. a GitHub.

Este problema es que la resolución DNS está contaminada, hay dos posibilidades:

  • La resolución DNS es secuestrada por el operador
  • Herramienta científica de Internet

Solución:

①Borrar caché de DNS

② Modifique el archivo de hosts y agregue una asignación de nombre de dominio github.com en la parte inferior:

vim /etc/hosts //Editar este archivo

Agregue 140.82.113.4 github.com en la parte inferior del archivo de hosts // Vea a continuación cómo encontrar esta dirección IP

Presione Esc y luego ingrese: wq!Guardar y salir

Si los permisos son insuficientes:

sudo su tiene privilegios de root y luego realiza las operaciones anteriores

Después de la operación, la terminal entra en salida para salir

Para encontrar la dirección IP de github.com, puede usar https://www.ipaddress.com/ para consultar, o puede usar nslookupel comando

nslookup github.com 8.8.8.8 //8.8.8.8 es la dirección del servidor DNS de Google, si no se agrega, utilizará el servidor DNS ya configurado en esta máquina para la resolución de nombres de dominio.
ipconfig /all Puede ver la dirección del servidor DNS local.

 3. git报错Error al conectarse al puerto 127.0.0.1 1080: Conexión rechazada

Solución:

(1) Eliminación de la agencia

        Muchas personas en Internet usan este método para resolverlo, pero este método no me sirve, soy un poco vago, así que no lo publicaré aquí, los familiares que lo necesiten, por favor verifíquelo en línea.

(2) Modificar el archivo .gitconfig

Introduzca el directorio raíz del usuario

cd o cd ~

 Modificar el contenido de .gitconfig

vim.gitconfig

Elimine esos http_proxy, ftp_proxy, all_proxy, https_proxy, no_proxy que apuntan a 127.0.0.1:1080.

Presione Esc y luego ingrese: wq!Guardar y salir

        Al informar un error de rechazo de conexión, primero determine si hay algunos proxies en su propio host o los proxies que se configuraron previamente porque desea acelerar el acceso. Si es así, intente eliminarlos primero. Si este es el caso, consulte si otros pueden conectarse Si Otros no pueden conectarse, entonces puede ser un problema con el servicio git

4.   La solución para quedarse atascado cuando git push (sin error o salida automática durante mucho tiempo)_Habilidades relacionadas_Programación en red-Programación Inn

5.  Fatal: el maestro de rama actual no tiene una solución de rama ascendente_Blog de Xiaozhi-CSDN

6.  https://www.cnblogs.com/princesong/p/9885857.html

7.  Verificación de seguridad - Zhihu

8. 完美解决remoto: el 13 de agosto de 2021 se eliminó la compatibilidad con la autenticación de contraseña. Utilice una persona | LongSheng

Más un resumen: verificación de seguridad - saber casi

Supongo que te gusta

Origin blog.csdn.net/qq_51368339/article/details/127889467
Recomendado
Clasificación