svn export is a terrible way to update live site.
- slow link or large website: svn export will take a long time, your users will love you
- certain apps will kill user sessions on code reload. Specifically I am looking at you Microsoft, with your global.asa / global.asx (out of open source PHP seems best. Not sure how Django/RoR enjoy code changes to pages that are already running)
Best setup I am aware of:
Point your website to something like
Checkout your website to
run remote svn udpate: ssh [server] -p [port] -u [user] svn update
trick: you can force export from checked out folder
run remote svn export: ssh [server] -p [port] -u [user] svn export
note: you export to a new folder, that is marked explicitly as specific revision number
trick: this way, if website gets broken, you change symlink to revert to a known stable version
This is safe on bandwidth (svn checkout between servers), fast atomic upgrade on the server (since symlink is changed once export is completed).