I am new to subversion and am wondering how do you move from develoment to staging then production?
I think I grasp the concept of creating branches made for releas
The way I handle it is I use a build tool (such as ant+ivy or maven) to automate the process of checking the code out of subversion, build a artifact, and then deploy to wherever needed.
I work more on java side, so not familiar with .net tools, perhaps you can use nmaven?
Unless you'll be developing on separate branches, I would just use a tag to mark a release.
You'll then want to do an svn export of that tag, so that you don't have all the extra .svn
folders all over.
Old thread, but has this now changed a little as SVN only has a single .svn file in the root of the project? You can also set Apache to ignore .svn requests making it more feasible to deploy this way?
You want to do a svn export. this will export the code without the .svn directories all over the place.
You need some sort of 'deploy' target in your build system that ignores folders named .svn - thats where all of the subversion info lives.
You're missing a piece here, basically - you shouldn't use subversion alone to deploy to test and production. Your best bet is to use some sort of script which will pull the build from subversion (if use svn export, it won't bring along subversion file hooks), build any necessary files (using MSBuild, which can be scripted), remove the unecessary files (such as .aspx.cs files since you've built the thing), and copy it over to your environment.
Locally, we use powershell to glue everything together and a combination of the svn command line, MSBuild, and nUnit from the command line to do our builds.