Here is my company's current process for moving changes from our development server to our production server:
I know this is a horrible way of doing things, but what's the best way to do this? My initial idea was to move all of our code into subversion. Then, when something needs updated, make changes in development, commit to the repository, and then update the production server from the repository.
Anyone have any alternatives / alterations / constructive criticism? Our development team only has 6 people and our code base is a sprinkling of ASP (very old, horrible legacy), PHP (somewhat newer), and Java EE (newest code; all applications built as separate WARs).
Thanks in advance
edit: For development of our Java EE apps, each developer has Glassfish v2 running on his machine. For PHP/ASP, we have a central dev server. For production, we have a server for PHP/ASP (IIS), and another one for Java (Glassfish v2).
As has been said, source control is a definite. It is the tool around which all coding and deployment should happen.
That being said, you might also want to employ a deployment tool like Capistrano or a build tool like Phing.
I use Capistrano to deploy our PHP applicaiton, and using a single terminal command it will:
If anything goes wrong, it will automatically roll back to the last good deployment. It's such a useful tool. Can't recommend it enough.
EDIT: Just realized this wasn't a PHP-only question. Depending on your platform, deployment tools will vary. Capistrano works great for Rails or PHP. Phing is a PHP version of Apache Ant. You might want to inquire as to the best tool for your chosen platform.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With