SSHをポート20000に設定しました。
svn co svn+ssh://server.com:20000/home/svn/proj1 proj1 --username jm
私は得る
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
SVNにポート20000も使用するように指示する必要があると思いますか?
私はUbuntu 11.10を使用しています
Subversion設定(~/.Subversion/config
)で新しい「トンネル」を定義できます。そこで[tunnels]
セクションを見つけて、次のように定義します。
[tunnels]
foo = ssh -p 20000
その後、URL svn+foo://server.com/home/svn/proj1 proj1
を使用してリポジトリにアクセスできます。
デフォルト以外のポートまたは別のユーザー名でsshサーバーにアクセスする必要がある場合は、常に ~/.ssh/config
でエイリアスを定義できます。
Host mysvn
HostName server.com
Port 20000
User jm
次に、svn co svn+ssh://mysvn/home/svn/proj1
を実行します。
何らかの理由で~/.Subversion/config
ファイルを編集できなかった場合は、コマンドラインでポートを指定できます。
svn co svn+ssh://joe@myserver/myrepo/ --config-option="config:tunnels:ssh=ssh -p 20000"
ただし、svn
コマンドを実行するたびにこのオプションを実行する必要があります。これは、ビルドエージェントにとって意味があるかもしれません。
〜/ .Subversion/configファイルしないにsshトンネルが定義されている場合、SVN_SSH環境変数を使用してコールごとにsshコマンドを上書きできます
SVN_SSH='ssh -p 20000' svn co svn+ssh://server.com/home/svn/proj1 proj1 --username jm
例えば
deo@fox:~$ SVN_SSH='ssh -v -p 20000' svn ls svn+ssh://svn/
OpenSSH_7.9p1 Debian-10, OpenSSL 1.1.1c 28 May 2019
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to svn [192.168.177.2] port 20000.
debug1: connect to address 192.168.177.2 port 20000: Connection refused
ssh: connect to Host svn port 20000: Connection refused
svn: E170013: Unable to connect to a repository at URL 'svn+ssh://svn'
svn: E210002: To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels] section of your Subversion configuration file.
svn: E210002: Network connection closed unexpectedly
〜/ .Subversion/configファイルdoesがsshトンネルを定義する場合、これは機能しません。その場合、構成ファイルが優先されます。 (これはかなり珍しいです。通常は逆ですが、環境変数は通常設定ファイルよりも優先されます)