views:

5171

answers:

3

I have a remote server that hosts my subversion repository on a non-standard ssh port. I want to use Eclipse's subclipse plugin as my client end to access the SVN repository. I can access the repository fine by using svn+specialssh://... where specialssh is a tunnel profile setup in my ~/.subversion/config.

In subclipse I tried to input the URL of the repository as: svn+specialssh:// but that doesn't work.

+2  A: 

Something I used to do is have a shell script wrap my access to SSH, something like:

#!ssh1234.sh
ssh -P 1234 $*

And I'd tell my Eclipse svn plugin to use that script instead of "ssh", by setting the SVN_SSH environment variable:

export SVN_SSH=$HOME/scripts/ssh1234.sh
orip
Where do you tell eclipse to use that instead of ssh?
MikeN
Good call, added.
orip
+2  A: 

First, I set up my tunnel to my repository, which lives behind the firewall on my home network:

ssh -L 9000:10.5.128.5:3690 root@<mypublicallyexposedaddress>

10.5.128.5 is the internal address of my repository host. Port 3690 is where svn listens.

Then in Eclipse, I configure the repository:

svn://localhost:9000/gwt

And there you go. This is not the only way to do it. I've also use an approach where Eclipse has to know it's ssh, and the plugin has to support it, which they do, but this approach is just my personal preference.

On second thought, you don't need anything that complicated. Try:

svn+ssh://host:port/directory
Don Branson
+2  A: 

Add the ssh connection configuration to your ~/.ssh/config file:

Host svnserver
    HostName your.real.hostname.here
    Port 1234
    User you

If you then specify "svnserver" as the hostname in any ssh/svn+ssh configuration, ssh should be able to resolve everything by simply reading your config file.

innaM