Suche


drucken PDF

Verwendung von SVN auf einem Shared Hosting


BESCHREIBUNG

Subversion (abgekürzt SVN) ist ein System zur Versionsverwaltung. In dieser Hilfe wird erklärt, wie man SVN mit öffentlichen/privaten Schlüssels über den SSH Zugang eines Shared Hostings verwenden kann (man muss also ein Hosting mit SSH Zugang haben, also ab dem Pro-Paket aufwärts). Die Hilfe setzt voraus, dass Sie per SSH mit dem Wurzelverzeichnis Ihres Hostings verbunden sind.

VORAUSSETZUNGEN


  • Ein Hosting, bei dem SSH Zugang möglich ist (ab dem Pro-Paket aufwärts)
  • Die Möglichkeit, eine SSH Verbindung herzustellen

ERSTELLUNG DES DEPOTS

Wenn Sie per SSH mit Ihrem Shared Hosting verbunden sind, dann müssen Sie einen Wurzelordner für die SVN Depots und anschliessend ein Depot erstellen.
Dazu genügt es, folgende Befehle einzugeben:

mkdir svn
und
svnadmin create svn/depot_test

Sie können anschliessend mit folgendem Befehl überprüfen, ob die Verzeichnisse erstellt wurden:
ls -la

Sie sollten dann die Verzeichnisse wie im unten stehenden Bild angezeigt bekommen:

ERSTELLUNG DER ÖFFENTLICHEN/PRIVATEN SCHLÜSSEL (Linux mit openssh)

Dieser Abschnitt wird auf dem Computer durchgeführt, der sich mit dem SVN Depot verbinden wird (dem SVN Client). Es muss dann ein RSA Schlüsselpaar erstellt werden. Geben Sie dazu folgenden Befehl in Ihrem Terminal ein:
ssh-keygen -t rsa
und entnehmen Sie die Zeile, die sich standardmässig in der Datei .ssh/id_rsa.pub befindet. Sie können diese Datei mit nano oder vi editieren. In diesem Beispiel wird nano genutzt:
nano .ssh/id_rsa.pub
Dort finden Sie dann den Schlüssel, der in drei Zeichenketten aufgeteilt ist: den Typ, den Schlüssel und einen Kommentar.

ERSTELLUNG DER ÖFFENTLICHEN/PRIVATEN SCHLÜSSEL (Windows mit putty)

Dieser Abschnitt wird auf dem Computer durchgeführt, der sich mit dem SVN Depot verbinden wird (dem SVN Client).
Laden Sie Putty für Windows herunter und installieren Sie es: http://the.earth.li/~sgtatham/putty/latest/x86/putty-0.60-installer.exe
Es muss dann ein RSA Schlüsselpaar erstellt werden. Starten Sie dazu PuTTYGen, erstellen Sie ein Schlüsselpaar und speichern Sie es:

HINZUFÜGEN DES ÖFFENTLICHEN SCHLÜSSELS AUF DEM HOSTING

Nachdem Sie Ihren Schlüssel erstellt haben müssen Sie diesen auf dem Hosting im Verzeichnis .ssh/authorized_keys2 hinzufügen. Dazu genügt es, die Datei mit nano oder vi zu erstellen:
nano .ssh/authorized_keys2
Wenn Sie die Datei geöffnet haben, dann müssen Sie dort folgende Zeile eintragen:
command="/usr/bin/svnserve --root=/home.XXX/FtpLogin/svn --tunnel --tunnel-user=BENUTZER",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty
und direkt dahinter (nur ein Leerzeichen einfügen) den vorher erstellten Schlüssel, alles in die gleiche Zeile!

Anmerkung: "home.XXX/FtpLogin" und "BENUTZER" bei Ihnen entsprechend ersetzen!

Den Home Ordner home.XXX finden Sie so heraus:
-> Einloggen in den Manager
-> Ihre Domain auswählen
-> Hosting Paket
-> Zusammenfassung

Der Benutzer kann dann den Inhalt des Depots abrufen, ohne sich jedoch direkt per SSH mit der Maschine verbinden zu können.


BEISPIEL (Linux)


Sie können von dem Computer aus, der sich mit dem SVN Depot verbindet, einen Test machen, indem Sie folgenden Befehl eingeben:
svn checkout svn+ssh://login@xxlplan.ovh.net/depot_test


BEISPIEL (Windows mit TortoiseSVN)

Laden Sie TortoiseSVN herunter und installieren Sie es: http://tortoisesvn.net/downloads
Machen Sie einen Doppelklick auf den privaten Schlüssel. Es erscheint dann rechts unten ein Icon, und der Schlüssel wird in den Authentifizierungsagenten geladen:
Erstellen Sie ein Verzeichnis, machen Sie darauf einen Rechtsklick und wählen Sie "SVN Checkout" aus. Geben Sie folgendes im Feld "URL of repository" ein und klicken Sie auf OK:
svn+ssh://login@xxlplan.ovh.net/depot_test




Es gibt eine sehr gute englische Dokumentation zu Subversion : http://svnbook.red-bean.com/en/1.5/index.html