I have a hosted SVN repository with assembla.

it has an address like:


Using TortoiseSVN I can checkout from this repository and commit to it.

But how would I deploy to a production server?

(I have not created a production server yet, I want to understand how this is going to work first).

4 Answers 4


One option is to have a local checkout, export it to another location, and upload the exported version (no .svn folders)

An alternative, if you have SSH access to the deployment server, and SVN is installed there, is to do a checkout on the server, using the branch/tag of your choice. When there is an updated version of the repo to make live, just log in on the server and run svn up. Pretty simple.

This technique does include the .svn folders. I'm not certain what a surfer could do with those, but it would be a good idea to use htaccess or similar to prevent web access to those folders.


Best practice would be to do an svn export then move the checkout into the web-root. Having .svn entries in your folder can lead to open sourcing your code. At a minimum you need to have your server not allow read access to the .svn entries. Not having them there at all is the best option.

Its fairly easy to write a bash or Phing script to do the checkout and move.


You could deploy your files from your subversion server to your webserver using puppet. Vcsdeploy gives you lots of options to do this http://www.practicalclouds.com/content/guide/pclouds-vcsdeploy-deploy-stuff

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.