2010-01-06 15 views
5

Wie kann ich den Subversion-Server so konfigurieren, dass der vollständige Repository-Pfad von der Außenwelt ausgeblendet wird?Subversion Repository-Pfad verbergen

Zum Beispiel lebt das Repository unter /home/svn/foobar/ ... Ich möchte es über ssh als svn+ssh://[email protected]/foobar zugreifen.

+0

Siehe http://serverfault.com/questions/100029/subversion-hide-repository-path auf ServerFault –

Antwort

3

sorgfältig über die offizielle SVN-Dokumentation zu lesen, die ich habe festgestellt, wenn Subversion über svn + ssh Zugriff - dann ein separater Svnserve Prozess für jede Verbindung hervorgebracht wird. So ist der Trick zu

ist
  1. Rename svnserve-svnserve.bin
  2. eine Datei svnserve
  3. genannt Erstellen Sie die folgende, um den Inhalt

    #!/bin/sh 
    exec /usr/bin/svnserve.bin -r /home/svn "[email protected]" 
    

So In der Wrapper genannt, jedes Mal wird Eine Serverinstanz wird benötigt. Es wird wiederum den Server mit einem neuen Root-Pfad initiieren.

Stück Kuchen!

+0

Eine weitere Option, die nicht die binären erfordert Umbenennung ist in dem svnserve Shell-Skript setzen/usr/local/bin, das (auf meiner Box) ist früher in der PATH-Liste. – dhowland

0

Sie können das HTTP (S) -Protokoll anstelle von SSH verwenden. Konfigurieren Sie Apache dann mit einem beliebigen virtuellen Verzeichnis.

2

Verwenden Sie die Option --root:

svnserve --root /home/svn