svn Repository+entfernter Server commiten

  • Ersteller Mitglied 7643
  • Erstellt am

Mitglied 7643

Gast
Hallo!

Der Titel ist etwas verwirrend, aber eigentlich ganz simpel. Ich programmiere mit Eclipse und möchte meine aktuellen Projektdateien, welche ich mit SVN verwalte, zusätzlich auf einem anderen Pfad aktualisieren. D.h. immer wenn ich meine Dateien commite, möchte ich, dass diese auch auf einem anderen Pfad aktualisiert werden. Ich habe keine Lust die Datei manuell von meinem Rechner hochzuladen...
Hat jemand eine Idee?
 

Mitglied 7643

Gast
Noch eine Anmerkung. Die Dateien, die auf einem anderen Pfad commitet werden, sollen vom Browser einsehbar sein (PHP, HTML).
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Du müsstest Die Dateien in den »anderen Pfad« aus-checken:
svn co ...
Oder habe ich Dich falsch verstanden?
 

Mitglied 7643

Gast
Folgendes. Der Server dient mir als Repository und als Host für meine Website. Ich möchte die Dateien, die ich im Repository verwalte gleichzeitig in einem anderen Pfad auf dem Server haben. Ich könnte den Apache konfigurieren, dass er im httpd.conf auf den Repository verweist, aber das bringt mir ja nix, da die Dateien dort codiert sind und für den Browser unbrauchbar sind. Ergo, ich müsste meine Arbeit (php, html,...) gleichzeitig auf dem Repository hochladen und auf dem Pfad, den ich gerade angesprochen habe, wo index.php usw. liegen. Weiß nicht, war das klar genug?!
 

Hilarious

Gelbe Schleswiger Reinette
Registriert
10.08.05
Beiträge
1.759
Dann müsste Dein Repository gleichzeitig Document Root für den Apache und Ablage für SVN sein. Oder auf das gewünschte Verzeichnis ein Check-Out machen. Zum Beispiel per Cron- oder AT-Job.
 

Mitglied 7643

Gast
Dann müsste Dein Repository gleichzeitig Document Root

Ja, das ist perfekt! Das habe ich mir auch schon gedacht, muss nur einen geeignetes Skript finden, der das in Apache schafft - kenne mich jetzt nicht 100% mit der Materie aus. Cronjob ist unpassend, obwohl das auch eine Alternative ist. Danke dir, du hast mir geholfen :)
 

pepi

Cellini
Registriert
03.09.05
Beiträge
8.740
Die Daten liegen im Repository nicht so vor wie in einer WorkingCopy. Dein Apache wird daher keine Webseite ausliefern können. Selbst wenn Du das Repository als Document Root angibst. Mal abgesehen davon, daß das eine recht unsichere Sache ist für den Fall, daß Dein Apache kompromitiert würde ist Dein komplettes Repository gefährdet!

Ich würde eher durch die Skripte am SVN Server einen zusätzlichen Checkout ins Document Root anstossen. Dann hast Du die Daten auch automatisiert im DocumentRoot und dort ist nur eine Working Copy "gefährdet". Du solltest allerdings auf alle Fälle die .svn Ordner per .htaccess vor Zugriffen schützen!
Gruß Pepi
 

Mitglied 7643

Gast
Nach meinem letzten Post habe ich mich schlau gemacht und tatsächlich scheint diese Herangehensweise fragwürdig zu sein.

Ich würde eher durch die Skripte am SVN Server einen zusätzlichen Checkout ins Document Root anstossen
Kannst du mir das näher beschreiben? Wie kann ich dazu einen Skript schreiben? Tutorial, Docs?
 

rydl

Bismarckapfel
Registriert
03.02.05
Beiträge
77
na per cronjob, wie gesagt... 10 * * * * root /script.sh o.ä. in die crontab schreiben und dein script macht halt nichts anderes als svn co ... und so weiter in dein favorisiertes verzeichnis ;)
 

Mitglied 7643

Gast
Danke nochmals, crontab funktioniert prima. Habe es auf minütlich eingestellt :)
 

pepi

Cellini
Registriert
03.09.05
Beiträge
8.740
Friede, Freude unnötige Serverlast... Ich sagte nicht cronjob sondern das von Deinem Commit anstossen zu lassen! Damit es also nur dann passiert wenn es auch sinnvoll ist.

Wie man sowas machen kann entnimmst Du am Besten dem kostenlosen Subversion Book!
Gruß Pepi
 
  • Like
Reaktionen: Hilarious