4 votos

Git se bloquea con un ssh remoto URI después de 10.15.4 actualización

Después de actualizar a Catalina 10.15.4, git empezado a colgar indefinidamente cuando tratando de empujar o tirar de una repo que antes era accesible.

$ git push origin master
^C

La dirección URL de origin parece:

$ git remote -v
origin  ssh://git@gitlab.example.com:30814/username/project.git (fetch)
origin  ssh://git@gitlab.example.com:30814/username/project.git (push)

Intentar ssh directamente a la remota resultados en un ala:

$ /usr/bin/ssh -p 30814 git@gitlab.example.com -vvv
OpenSSH_8.1p1, LibreSSL 2.7.3
debug1: Reading configuration data /Users/username/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 47: Applying options for *
debug1: Connecting to gitlab.example.com port 30814.
^C

Lo que parece indicar que el problema subyacente con git es el ssh:// URI para el repositorio remoto. Me confirmó esto con éxito la clonación de la repo utilizando un https:// URI.

4voto

MoSlo Puntos 807

Los pasos de depuración:

  1. Intentó conectar con netcat:
$ nc -v gitlab.example.com 30814
Connection to gitlab.example.com port 30814 [tcp/*] succeeded!
SSH-2.0-OpenSSH_7.2
^C
  1. La sospecha de una fractura de un cliente ssh, he instalado openssh uso de cerveza:
$ brew install openssh
...
$ /usr/local/bin/ssh  -V
OpenSSH_8.2p1, OpenSSL 1.1.1d  10 Sep 2019

$ /usr/local/bin/ssh -p 30814 git@gitlab.example.com
Welcome to GitLab, @username!
Connection to gitlab.example.com closed.

Después de actualizar mi entorno de shell para asegurarse de que el nuevo ssh se encuentra en mi $PATH, git operaciones comenzó a funcionar como se espera, ssh:// Uri.

La búsqueda se presentó este usuario enviado error: ssh falla cuando se utiliza -p bandera

La solución detallada en el error es el uso de la dirección IP del host remoto lugar del nombre DNS. Puedo confirmar que esto funcionó para mí:

$ /usr/bin/ssh -V
OpenSSH_8.1p1, LibreSSL 2.7.3

$ /usr/bin/ssh -p 30814 git@192.168.1.1
Welcome to GitLab, @username!
Connection to gitlab.example.com closed.

El factor desencadenante evidente para este error es el uso de los puertos mayores de 8192 junto con un anfitrión de nombre DNS.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X