Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

I have a hosted SVN repository with assembla.

it has an address like:

https://subversion.assembla.com/svn/my-repository-name/

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).

share|improve this question
add comment

4 Answers

up vote 1 down vote accepted

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.

share|improve this answer
    
This makes perfect since thanks! –  JD Isaacks Dec 31 '10 at 14:31
add comment

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.

share|improve this answer
add comment

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

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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