git - tag - Usar un repositorio remoto con un puerto no estándar
git push tag (5)
El método de acceso git basado en SSH se puede especificar en <repo_path>/.git/config
usando una URL completa o una sintaxis similar a SCP, como se especifica en http://git-scm.com/docs/git-clone :
Estilo de URL:
url = ssh://[user@]host.xz[:port]/path/to/repo.git/
Estilo SCP:
url = [user@]host.xz:path/to/repo.git/
Tenga en cuenta que el estilo de SCP no permite un cambio de puerto directo, confiando en cambio en una definición de host ssh_config
en su ~/.ssh/config
, como por ejemplo:
Host my_git_host
HostName git.some.host.org
Port 24589
User not_a_root_user
Entonces puedes probar en un caparazón con:
ssh my_git_host
y modifique su URI estilo SCP en <repo_path>/.git/config
como:
url = my_git_host:path/to/repo.git/
Estoy configurando mi proyecto git local para un repositorio remoto. El repositorio remoto se sirve en un puerto no estándar (4019).
Pero no funciona. En cambio, aparece el siguiente mensaje de error:
ssh: connect to host git.host.de:4019 port 22: Connection refused
fatal: The remote end hung up unexpectedly
error: failed to push to ''ssh://[email protected]:4019/var/cache/git/project.git''
Mi configuración de git local es la siguiente :
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = ssh://[email protected]:4019/var/cache/git/project.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
(El puerto y el host son marcadores de posición para el puerto y el host reales).
¿Qué pasa con mi configuración de git?
Esto evita su problema en lugar de solucionarlo directamente, pero recomiendo agregar un archivo ~/.ssh/config
y tener algo como esto
Host git_host
HostName git.host.de
User root
Port 4019
entonces puedes tener
url = git_host:/var/cache/git/project.git
y también puedes ssh git_host
y scp git_host ...
y todo saldrá bien.
Prueba esto
git clone ssh://[email protected]:11111/home/git/repo.git
SSH no usa la sintaxis :
cuando especifica un puerto. La forma más fácil de hacerlo es editar su archivo ~/.ssh/config
y agregar:
Host git.host.de Port 4019
Luego especifique solo git.host.de
sin un número de puerto.
Si pones algo como esto en tu .ssh/config
:
Host githost
HostName git.host.de
Port 4019
User root
entonces deberías poder usar la sintaxis básica:
git push githost:/var/cache/git/project.git master