〜/ .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ファイルが sshトンネルを定義している場合、これは機能しません。その場合、構成ファイルが優先されます。(どちらかといえば珍しいことです。通常は別の方法です。通常、環境変数は設定ファイルよりも優先されます)
svn+ssh
プロトコルのポートをオーバーライドする場合は、定義するだけssh = ssh -p 20000
です。これは/etc/ssh/sshd_config
、サーバーで変更されているため、Port 22
に置き換えられていることを前提としていますPort 20000
。