I'm currently managing the development of a live web application. There are two developers. We're looking to define a workflow that specifies how builds and deployments should happen.
We're currently using codebaseHQ for source control.
This is what I'm thinking:
- Dev1 and Dev 2 get and commit changes to a single repository on CodeBaseHQ.
- We push updates from codebaseHQ to alpha.domain.com, which is decoupled from the production database, for initial testing.
- Assuming tests go well, merge changes onto beta.domain.com, which is coupled to the production database, for further testing.
- Assuming these tests go well, merge onto domain.com (production).
Does this sound okay? It seems like a very cumbersome process for the developers - they have to test/push twice for each changeset. With infrequent updates this seems bearable, but if we're pushing changes on a daily basis, what would you recommend?