2009-01-25 16 views
8

Ich habe einen Remote-Server, der mein Subversion-Repository auf einem nicht standardmäßigen SSH-Port hostet. Ich möchte das Eclipse-Subklipsen-Plugin als mein Client-Ende verwenden, um auf das SVN-Repository zuzugreifen. Ich kann auf das Repository fein zugreifen, indem ich svn + specialssh: // ... verwende, wo specialssh ein Tunnelprofil-Setup in meiner ~/.subversion/config ist.Wie kann ich Subversion mit SSH-Tunnel in Eclipse einrichten?

In der Subclipse habe ich versucht, die URL des Repository einzugeben als: svn + specialssh: // aber das funktioniert nicht.

+0

Sind Sie Eclipse-sicher nicht mit einer solchen URIs umgehen können? svn + specialssh: // sollte dafür gelten. – Keltia

+0

Verwenden Sie wirklich einen Tunnel oder ist das Problem nur der Nicht-Standard-Port für ssh? – innaM

Antwort

7

Zuerst stellte ich meinen Tunnel zu meinem Repository auf, die hinter der Firewall auf meinem Heim-Netzwerk lebt:

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

10.5.128.5 ist die interne Adresse meines Repository-Hosts. Port 3690 ist wo Svn hört.

dann in Eclipse, konfiguriere ich das Repository:

svn://localhost:9000/gwt 

Und los geht. Dies ist nicht die einzige Möglichkeit, dies zu tun. Ich habe auch einen Ansatz, bei dem Eclipse wissen muss, dass es ssh ist, und das Plugin muss es unterstützen, was sie tun, aber dieser Ansatz ist nur meine persönliche Präferenz.

Auf den zweiten Gedanken, Sie brauchen nichts, das kompliziert. Versuchen:

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

Etwas, was ich zu tun pflegte ist ein Shell-Skript haben mein Zugang zu SSH wickeln, so etwas wie:

#!ssh1234.sh 
ssh -P 1234 $* 

Und ich würde meine Eclipse-SVN-Plugin sagen, dass Skript anstelle von „ssh“ zu verwenden, durch einstellen des SVN_SSH Umgebungsvariable:

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

Wohin sagst du Eclipse, das anstelle von ssh zu verwenden? – MikeN

+0

Guter Anruf, hinzugefügt. – orip

5

Fügen Sie die SSH-Verbindung Konfiguration zu Ihrem ~/.ssh/config-Datei:

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

Wenn Sie dann "svnserver" als Hostnamen in jedem ssh/svn + ssh-Konfiguration, ssh sollte in der Lage sein, alles zu lösen, indem Sie einfach Ihre Konfigurationsdatei lesen.

+0

Dies funktionierte für CL-Verbindungen, aber nicht für Eclipse mit svn + ssh: // svnserver/pfad/zu/svn/repo als URL mit Subclipse 1.6. – umassthrower

Verwandte Themen