2009-01-25 10 views
8

J'ai un serveur distant qui héberge mon référentiel subversion sur un port ssh non standard. Je souhaite utiliser le plugin subclipse d'Eclipse en tant que client pour accéder au référentiel SVN. Je peux accéder au dépôt en utilisant svn + specialssh: // ... où specialssh est une configuration de profil de tunnel dans mon ~/.subversion/config.Comment puis-je configurer subversion avec un tunnel ssh dans Eclipse?

Dans la sous-classe j'ai essayé d'entrer l'URL du dépôt comme: svn + specialssh: // mais cela ne fonctionne pas.

+0

Etes-vous sûr Eclipse ne peut pas traiter avec ces URIs? svn + specialssh: // devrait être valide pour cela. – Keltia

+0

Utilisez-vous vraiment un tunnel ou le problème est-il simplement le port non-standard pour ssh? – innaM

Répondre

7

d'abord, je mis mon tunnel à mon dépôt, qui vit derrière le pare-feu sur mon réseau domestique:

ssh -L 9000:10.5.128.5:3690 [email protected]<mypublicallyexposedaddress> 

10.5.128.5 est l'adresse interne de mon hôte de référentiel. Le port 3690 est l'endroit où svn écoute.

Puis dans Eclipse, configurer le référentiel:

svn://localhost:9000/gwt 

Et là vous allez. Ce n'est pas la seule façon de le faire. J'ai également utilisé une approche où Eclipse doit savoir que c'est ssh, et le plugin doit le supporter, ce qu'ils font, mais cette approche est juste ma préférence personnelle. À la réflexion, vous n'avez besoin de rien de compliqué. Essayez:

svn+ssh://host:port/directory 
2

Quelque chose que je l'habitude de faire est d'avoir un script shell envelopper mon accès à SSH, quelque chose comme:

#!ssh1234.sh 
ssh -P 1234 $* 

Et je dis à mon plugin Eclipse svn utiliser ce script au lieu de « ssh », par le réglage de la variable d'environnement SVN_SSH:

export SVN_SSH=$HOME/scripts/ssh1234.sh 
+0

Où dites-vous à eclipse de l'utiliser à la place de ssh? – MikeN

+0

Bon appel, ajouté. – orip

5

Ajouter la configuration de connexion ssh à votre ~/.ssh/config:

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

Si vous spécifiez ensuite "svnserver" comme le nom d'hôte dans une ssh/svn + configuration ssh, ssh devrait être capable de tout résoudre en lisant simplement votre fichier de configuration.

+0

Cela a fonctionné pour les connexions CL, mais pas pour eclipse en utilisant svn + ssh: // svnserver/chemin/vers/svn/repo comme URL avec sous-eclipse 1.6. – umassthrower