Skonfigurowałem SSH na porcie 20000. Kiedy próbuję:
svn co svn+ssh://server.com:20000/home/svn/proj1 proj1 --username jm
dostaję
svn: To better debug SSH connection problems, remove the -q option
from 'ssh' in the [tunnels] section of your Subversion configuration
file. svn: Network connection closed unexpectedly
Myślę, że muszę też powiedzieć SVN, aby używał portu 20000?
Jestem na Ubuntu 11.10
ssh
tcp
subversion
Jiew Meng
źródło
źródło
svn+ssh
port protokołu, po prostu zdefiniujssh = ssh -p 20000
. Zakłada się, że zmodyfikowałeś/etc/ssh/sshd_config
na serwerze iPort 22
zastąpiono goPort 20000
.ssh = ssh -p 20000
a potem próbowałem wyewidencjonować,svn+ssh://example.org/var/svn-repos/mydev/trunk
ale to wciąż próbuje na porcie 22Ilekroć musisz uzyskać dostęp do serwera ssh na porcie innym niż domyślny lub z inną nazwą użytkownika, możesz zdefiniować alias w
~/.ssh/config
.Potem biegnij
svn co svn+ssh://mysvn/home/svn/proj1
.źródło
Jeśli z jakiegoś powodu nie możesz edytować
~/.subversion/config
pliku, możesz określić port w wierszu polecenia:svn co svn+ssh://joe@myserver/myrepo/ --config-option="config:tunnels:ssh=ssh -p 20000"
ale musisz wykonać tę opcję przy każdym uruchomieniu
svn
polecenia. Może to mieć sens dla agenta kompilacji.źródło
W przypadku, gdy plik ~ / .subversion / config nie ma zdefiniowanego tunelu ssh, możesz zastąpić komendę ssh dla poszczególnych połączeń za pomocą zmiennej środowiskowej SVN_SSH
Na przykład
To nie zadziała, jeśli plik ~ / .subversion / config nie definiuje tunelu ssh, w takim przypadku plik konfiguracyjny ma pierwszeństwo. (Co jest raczej niezwykłe. Zwykle jest odwrotnie, zmienne środowiskowe zwykle mają pierwszeństwo przed plikami konfiguracyjnymi)
źródło