My question is somewhat related to this question.
What are good ways to set up a reasonably efficient environment for web development? I am using Subversion, and have two servers, a live one, and a dev site that is pretty much a mirror for the code. Up to now, I have been coding directly on the dev site, but I'm now thinking I should pull back and just use it for testing, with each developer having his own version of the site.
This does mean having to set up local versions of the database etc. for each user though, and has complications of their own.
Does anyone know of a good way to manage this? Perhaps setting up virtual machines and just cloning them to each person, using VMWare perhaps?
One slight problem is that some of the code depends on the URL (specifically the subdomain), which means you couldn't just run things on localhost (at least without changing the code I guess, which is a possibility).
In any case, I am quite sure issues like this have cropped up again and again, so I would be very interested to learn how other people deal with these issues.
I should probably mention that most of the code I write for the web is PHP, though with some Javascript as well. One big benefit of switching to local machines is that I could use a proper debugging environment for PHP, as I am starting to get very frustrated with just echoing data structures to the browser as a way to fix issues.