Jump to content

My implementation


justsomeguy

Recommended Posts

I use the Collabnet Subversion Edge stack in two environments. One of them is at a company where I work with 2 other developers, mainly on a single project, and the other is for my personal projects. Both setups are pretty similar. We use Tortoise as the client.At the company, we have a web server on the local network which also acts as the Subversion server, although Subversion is not accessible from outside of the network. All three programmers work on a particular project, and recently we've branched that project to create another similar, specialized project. So, we're basically working on two versions of a project. We had been using Subversion with just the main project for a while, where we use branches basically to represent versions, where we'll only be working on one branch at a time. Once the version hits the point where we're finished testing and ready to release, we merge the branch back into the trunk and then create another branch for the next version. We do new installs from the trunk. We haven't used tagging at this point for anything. We install the application on remote servers, so we'll typically just export the trunk to an install directory on the local network, edit the files for the new installation, and upload everything to the destination. We do all of our testing on the remote servers as well, we don't have an internal server set up to run everything locally.With the new project, I basically exported the current branch to a new repository, which we use the same way. We're still working on the first version of that project, so we haven't created many branches yet.For the personal projects, I'm using a remote virtualized server running Windows Server 2008. That server is set up pretty similarly, it is an online web/database server in addition to an SVN server. SVN access is available to anyone with credentials. The main difference is that this server is also the production environment, so we just have the test versions in subdirectories or subdomains. The test directory on that server is also source-controlled, so I can either upload files through FTP to test online, or log in remotely and update the working copy to download the latest files. I typically don't edit the files directly on the server, I'll work on a workstation and upload everything periodically.So, both setups are pretty similar, I rely on branches to separate the versions, periodically merge the stable branches into the trunk, and install from the trunk. I'd like to learn more about tagging and more in general about branching and merging. One of the developers at work would some times overwrite everyone else's changes with older files when he was committing, so we're definitely still figuring everything out. I set the system up and don't have a lot of experience using them, and haven't taken the time to read through one of the many books about them, so there's still a lot I don't know.

Link to comment
Share on other sites

Thanks for sharing your implementation of version control. I liked the fact that you detailed your professional and person methodology. I'll have to do the same. What I posted is just what I have at work. At home, it is a little different since I don't have a dev or test server. I do all my work on my clients live sites. I know that seems scary but I meticulously plan every thing I work on and always have a tagged version to fall back on should I really screw something up. Granted, I will work on copy pages as needed so it's far from ideal but that's what version control has been important for me there.Thanks again for taking the time post that.

Link to comment
Share on other sites

  • 1 year later...
Guest So Called

Nice article JSG. :) Version control is important. Those who don't know that will suffer until they learn.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...