PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SVN auf Shared-Host


dav133
2009-07-26, 10:17:13
Hallo,

ich würde gern für ein größeres Projekt die Vorteile von SVN nutzen, allerdings steht nur ein Shared-Host zur Verfügung, auf dem ich a) keinen SSH-Zugriff und b) keine Möglichkeit zum Ausführen von system/exec/passthru habe. Das Repo könnte ich woanders anlegen, das wär kein Problem... Nur den Checkout müsste ich halt mittels PHP-Script vom Shared-Host aus anstoßen... Nur stellt sich jetzt die Frage, wie das unter diesen zusammengestrichenen Voraussetzungen noch möglich sein soll, ohne wieder "oldschool" ein FTP-Sync-Tool zu bemühen.

lg

Marscel
2009-07-26, 10:54:46
Im Prinzip gibts eine SVN-Extension für PHP, die sowas bei mir tut, nachgucken.

Andere Möglichkeit, Webservice für sowas erstellen.

dav133
2009-07-26, 11:46:29
Also was ich schon gefunden hatte war das PEAR-Paket (http://pear.php.net/packages.php?catpid=40) (welches von exec/system Gebrauch macht, also quasi nur eine Vereinfachung fürs PHP-Checkout-Script selbst darstellt) und ein PECL-Paket (http://pecl.php.net/package/svn), dessen Funktionalität ich noch nicht ganz durchblickt habe ;).

lg

Marscel
2009-07-26, 14:36:46
Das im PECL-Paket meinte ich, ein Update-Skript bei mir sieht z.B. so aus:

<?php
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_USERNAME, 'xxx'); // Username
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_PASSWORD, 'yyy'); // Passwort
$output = svn_update(".");
echo "Done @ Rev. ".$output;
?>

Wenn du nun ein Checkout ausführen willst, schau dir svn_checkout an.

dav133
2009-07-26, 16:03:12
Puh, also grad bin ich völlig desorientiert...

Ich muss ja erstmal die svn-extension laden, was ja mit dl('svn.so'); geschehen sollte. Allerdings wurde PHP auf meinem Shared-Host ohne svn kompiliert, weswegen ich folgende Meldung kriege

Warning: dl() [function.dl]: Unable to load dynamic library '/usr/lib/php/svn.so' - /usr/lib/php/svn.so: cannot open shared object file: No such file or directory in /www/htdocs/w00aaf66/svn.php on line 9

Meines Verständnisses nach benötige ich diese extension, um die von dir beschriebenen Funktionen nutzen zu können oder sehe ich das falsch?

lg

Marscel
2009-07-31, 20:23:29
Sorry, bin nur am Wochenende am PC.

Ja, die svn-Extension muss reingelinkt oder dynamisch geladen werden, sonst funktionierts nicht.

Wenns bei dem Provider nicht angeboten wird, lieb nachfragen, aufrüsten oder was anderes einfallen lassen.