2010-07-29 11 views
8

Un colega mío tiene un repositorio de git remoto que quería clonar y me proporcionó una url de [email protected]: 443/repo.git. ssh aparece en el puerto 443 en este caso.git clone requiere ssh: // protocolo cuando quizás no debería?

Intenté clonar haciendo git clone [email protected]:443/repo.git pero la operación expira. Pensé que git está predeterminado a ssh como su protocolo y no estoy seguro de por qué esto no funciona.

Si especifico explícitamente ssh en la url como git clone ssh://[email protected]:443/repo.git funciona igual de normal.

¿Es ese comportamiento esperado de git? ¿Por qué la primera URL no funciona pero la segunda sí?

Respuesta

10

Sí. La sintaxis de clonación "predeterminada" es similar a scp. Las URL de scp se parecen a "usuario @ host: ruta". Tenga en cuenta los dos puntos; si usa [email protected]:443/repo.git, Git piensa que está intentando clonar una ruta 443/repo.git de [email protected]. Si necesita especificar un puerto, debe usar la sintaxis de estilo ssh (como terminó haciendo).

+2

O use '.ssh/config' para especificar el puerto. –

+0

¿Quiere decir que cada cliente debe editar su '~/.ssh/config'? ¿No podemos hacer esto en el lado del servidor? –