SVN Hooks: Automatischer Checkout nach Commit
Wer seinen SVN-Server direkt auf dem Development-Server laufen hat, kann folgendes machen um sein Testsystem stets aktuell zu halten.
SVN stellt dafür bereits die Möglichkeit mit Hooks zur Verfügung. Diese können sich in den Checkinprozess einklinken.
Um das Development-System nach einem Checkin zu aktualisieren sind folgende Schritte nötig:
1. Template “post-commit.tpl” in “post-commit” umbenennen
cd /#PATHTOSVNREPO#/hooks/
mv post-commit.tpl post-commit
2. post-commit anpassen
Am Ende der Datei folgende Zeile hinzufügen und die Werte mit # anpassen:
bash -c 'cd /#PathToWebserverRoot/ && svn up --username #UserName# --password #Password# &>/var/log/svn-up.log'
3. Rechte vergeben
chmod a+x post-commit
4. SVN-Commit & Test
Führe einen Commit aus und prüfe, ob der Checkout richtig funktioniert.
Weitere Informationen:
http://subversion.tigris.org/faq.html#website-auto-update
http://subversion.tigris.org/faq.html#hook-debugging