PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SVN Server: repo zu FTP/samba direkt exportieren?



Poison Nuke
04.08.16, 11:21
Hallo,

gibt es einen Weg, dass man den aktuellen Zustand eines SVN auch per Samba und FTP zugänglich macht, ohne das man einen SVN Client auf dem Server installieren und das gesamte Repo duplizieren muss? Wäre vom Speicherplatz her nicht möglich, daher.

Oder gäbe es andere Versionierungssysteme, die das könnten? Es wird im Endeffekt nur eine simple Versionierung benötigt ohne all zu viele Extras, da es primär als Speicherplatz verwendet wird und man wissen will, wer was geändert hat und zur Not alte Versionen wiederherstellen kann.

marce
04.08.16, 11:38
https://subversion.apache.org/faq.html#filesystem

Evtl. wäre da aber dann git eine bessere Lösung.

Poison Nuke
04.08.16, 11:49
das ist keine wirklich Antwort. mir ist klar das SVN kein neues Dateisystem ist, aber es legt auch keine Dateien ab die man nutzen könnte. Man braucht zwangsweise einen Client der "SVN" spricht. Und selbst programmieren wollte ich keinen, ich hätte gehofft es gibt schon einen für diesen Zweck.

Daher meine Frage, gibt es einen SVN Client, der das Repo transparent zu FTP/Samba exportieren kann. oder allgemein zu einem Mount-Point, von dem aus man dann ganz normal auf den Dateien arbeiten könnte, ohne sich über die Versionierung usw Gedanken machen zu müssen.

marce
04.08.16, 11:55
Tja, genau das wollte ich mit dem Link sagen - es gibt wohl ein SVN-Filesystem - leider finde ich aktuell auch keine weiteren Infos dazu.

Variante (1): http://svnbook.red-bean.com/en/1.7/svn.webdav.clients.html#svn.webdav.clients.fs-impl.linux
Variante (2): https://github.com/rutsky/svnfs (siehe auch "Alternatives")

nopes
04.08.16, 12:03
Mir ist zwar für SVN kein Web basierter Server bekannt (geschweige denn einer mit was FS artigen), es gibt halt so Aufsetze ala submin, die helfen dir aber nicht wirklich weiter...
Aber kannst du das nicht einfach auf dem SVN Server auschecken und per Samba oder FTP verfügbar machen, alternativ auf einem beliebigen anderen Rechner ein SVN Client installieren und Samba- oder FTP-Server oder beides einrichten, geht ja nur darum dem Server die Dateien per Samba oder FTP zur Verfügung zu stellen - keine Programmieren notwendig, nur installieren und konfiguieren ;)

Poison Nuke
04.08.16, 12:13
Tja, genau das wollte ich mit dem Link sagen - es gibt wohl ein SVN-Filesystem - leider finde ich aktuell auch keine weiteren Infos dazu.

Variante (1): http://svnbook.red-bean.com/en/1.7/svn.webdav.clients.html#svn.webdav.clients.fs-impl.linux
Variante (2): https://github.com/rutsky/svnfs (siehe auch "Alternatives")

aso war das gemeint. Das konnte ich auf der Seite gar nicht rauslesen. Klingt zumindest sehr interessant, vorallem das SVNFS. Schau cih mir mal näher an.


@nopes:
das Problem ist, ich habe nur 2TB Speicherplatz und der SVN belegt den zum größten Teil. Würde ich den nun auschecken bräuchte ich nochmal 2TB, die ich auf dem Server nicht habe. Und der SVN Client müsste Updates und Commits automatisch ausführen sobald sich die Dateien verändern, das hatte ich bisher auch noch nicht gesehen.

nopes
04.08.16, 12:22
Naja dafür könntest du diese hooks verwenden, aber das finde ich nicht so prall, schau die lieber die Sachen von marce an und halte das als Fallback im Hinterkopf...

marce
04.08.16, 12:27
Naja, für den CheckOut brauchst Du ja nicht den kompletten Platz des Repos sondern nur den Head-Stand.

Aber wie gesagt: Mit git wäre das einfacher zu erreichen.

Poison Nuke
04.08.16, 12:33
ok ich hab git bisher immer ausschließich als Programmier-Versionierung gesehen, weil es eben mächte Tools hat um Code zu versionieren.

Die Frage ist vorallem: wie kommen diese Systeme mit einer halben Million Einzeldateien klar, die zusammen bald 2 TB belegen?

Wie schaut es mit CVS aus? Hab auch schonmal zu OwnCloud geschaut, aber dessen Versionierung ist etwas zu simpel (und auch speicherhungrig)

BetterWorld
04.08.16, 12:33
hg (Mercurial) bringt ein Webinterface mit.
Und es spricht einige andere Dialekte, wie git.