I had some trouble accessing my svn repository on my server. The people who host my website use a non-standard SSH port, and they force you to access the svn server through SSH - but without telling svnserve to use the non-standard port!
So, after much trawling through the internet, I finally found the solution, thanks to this page. Their solution didn't quite match my needs (as they assume root access for the Linux shell, which I don't have), but it got me over the hump. Their solution is to set the global variable $SVN_SSH, '
It seems like the environment variable is the only way to set the SSH port.'
However, this is wrong - there is another way, and it is more elegant, I think.
The subversion configuration file settings on a standard Linux setup can be found in the '.subversion' directory. In this folder you can find the 'config' file. Open this, and you will find the '[tunnels]' section. Add the following code to that section:
custom_ssh = $SVN_SSH ssh -p 12345
This creates a custom ssh access protocol which is identical to the standard one, except with a different port number. If you want to specify a different (or non-ssh) protocol you can do that too. More details can be found here.
To access the repository now, you simply use this:
$ svn co svn+custom_ssh://username@server_ip/path/to/repos/ .
instead of this:
$ svn co svn+ssh://username@server_ip/path/to/repos/ .
Problem solved!
Recent Comments