We’re adding some structure to our development environment and seeking guidance from those who may have done so before.
We’ve been limping along with no real version control for the last six months and since we expect to add another programmer in the next six months. Thought that now would be the best time to put in place stricter version control software and/or procedures.
I’m not a huge fan of SVN and other version control systems. They are a bit too complex so were thinking of using this structure. Your input is appreciated.
Currently we have two ColdFusion developers each with their own self managed, local CF development environment. We have one centralized testing server and one production server. The production server has 10+ CF sites and a few PHP sites on it. Currently we have a background batch process that compares every site on the production server and the testing server. It runs several times a day. This process updates a database with all of the differences between the two servers. This allows reports to quickly and easily be run from this database with out having to physically compare the files whenever a report is run.
Each developer only has access to their local machine as well as the testing machine. They can run the same exact process as described above against their development machine and the testing machine. Only our lead developer has access to the production machine.
To place code into production, we have a shell script that copies the file from the testing machine to the production machine. This process also removes the prior difference from the database as the two machines are in sync now. This process also stores who made the modification and all previous version of the code so that it can be rolled back if needed. This is the only process that is allowed to update the production machine. Individual developers do not have access to the production machine.
From what I’ve read and played with, other forms of version control require more management and place significant requirements on the programmers. Does my approach seem simple yet accomplishes the exact same thing as more ridged VC systems.







