I’ve started taking a hard look at automating my web development setup. Right now, frankly, it’s kinda sad. Here’s how it works:
I use MAMP as my local php environment. When I want to create a new project I simply create a new subfolder and throw the files in there. If it’s a WordPress project I (manually) grab the latest zip file, extract it all, and set it up.
There is no “staging” or “test” or any other environment before prod. There’s local and prod and I move files using ftp. It works but I know it’s not “correct” and it has caused me problems in the past.
I use source control but it’s definitely more of a backup at the moment than a real source control solution.
Blech, I know this isn’t right. I’ll be taking some steps this year to fix this. First step – learning how to use vagrant to set up my environment properly. After that, getting a really good handle on using mercurial. Finally, I want to set up a really solid deployment process complete with rollbacks and database migrations.
All the tools are out there, and they’re awesome – just got to learn how to use them. :S