I’m just getting started learning how to use Subversion for building my web applications, so bear with me.
Here is how I am setting it all up:
- One of my domains will host the repositories for all of my projects. I have the standard tags/branches/trunk structure. This is in a public folder so it can be accessed by other developers.
- I will have a folder on my live server containing each release of the application, and I’ll have a symlink in the web directory pointing to the current release. This way, when I release an update to the application, I export it to the release directory and then switch the symlink so the changes are online instantaneously.
Here is my question:
What is the best structure for the local working copy of the project? I’m going to be working on both branches and the trunk quite frequently, so should I check out the entire repository structure (tags/trunk/branches) or just check out the trunk and each branch individually into different folders?
Also, if anything I said about how I have it set up seems strange or a wrong way to do it, let me know (I’m new to this!).
You can check out the entire repository if you really feel like it. It’s up to you. Personally, I would just check out the parts that I’m actively working on. That way, “svn update” doesn’t take forever, and less space is taken up on my own hard drive. As for switching between locations in your repository, there is a special command for that: “svn switch” (abbreviated “svn sw”). Use “svn help switch” or see the link for more info:
http://svnbook.red-bean.com/en/1.1/ch04s05.html