Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
Hello, Just setting up CVSNT for the first time. We've done testing with it and are almost ready for real deployment. We had a few questions on best practices and were hoping to receive some suggestions. We develop several different types of applications, primarily Macromedia Flash and ColdFusion. I've used VSS and Star Team before for VB work but never for web work and am a little confused about how to set it up. Web Development The issue is that all developers share one development server. Our initial thoughts are to use CVS as our repository for ColdFusion files and set up CVS to automatically copy files from the repo to the webroot on each check-in. VSS called this shadowing, and I think I saw some utility for CVSNT to do this. The problem one developer pointed out is that while developing CF apps we will need to commit the files just to test them, not when we're done. This will result in probably as many as a few dozen commits per day per developer for each file they're working on. The history will grow large and it'll make finding older versions difficult. There were two suggestions from our own group but nobody is really happy with either. 1. Use CVS only for managing the "authoritative" copy of the CFM files and during the day while developing copy the files to the server using FTP or RDS. We don't like this idea since we're now using two technologies to transfer the same files to the same server and CVS becomes an additional step with extra work, as opposed to an efficiency boost. 2. Install development copy of the server software on everyone's local PC. This is an option but has some logistical issues and we'd rather avoid it. Are there any other options we haven't thought of? All suggestions would be welcome. As I understand it CVS was really created for open-source projects where each developer does have the ability to run the files locally, so maybe #2 is our only option. BTW, we're in a distributed environment where developers are in different offices and everyone is in a different location from the servers--so no LAN access. Cross Module Shadowing When looking at the option to have CVS copy files to the webroot upon commit (sorry if anyone is offended by my use of the VSS term shadowing--I don't know if there is an official CVS term), the issue arises that the Macromedia Flash files are really a hybrid of resource/webroot files (i.e., some files go in the module outside of webroot and a few--mostly just the swfs--go to the webroot). Again, we'd like to avoid forcing people to make file copies or movements outside of CVS. Can we set up CVS to copy certain files from one module to a shodowing directory set up for another module? What about if the developer locally copies the file from one module to another and then does a commit on the target, will that cause problems for CVS? These are binary files if it makes a difference. All suggestions, comments, corrections, whatever will be most welcome! Best regards, Sam