Version Control
As an alternative to a formal version control system, our development and even our production environments are littered with files like index12112006.html or index12202006.html. This is terrible.
Although we have had a CVS server set up since at least 2005 (it was there when I started), it is used inconsistently at best.And using a version control system inconsistently is worse, in some ways, than no version control system at all: you can’t rely on the repository to have the most recent information, so you have to compare the repository to other likely sources of updated information (the development and production environments).
What are the barriers to adoption for version control? In part, it is unfamiliarity. In part, it is just one more step between the developer and a quick, harmless edit to a file. I’d group both of those as ease-of-use issues. The other barrier is a lack of understanding about the benefits version control provides.
The ease-of-use issue is exacerbated by a lack of good interface tools. We are using TortoiseCVS, and another developer and I are using the CVS features built in to Eclipse. I think that using Eclipse works well, and I’ve even created a couple simple ANT scripts to roll files out to the development environment once I’ve tested them in my sandbox.
The majority of other developers are using Dreamweaver, and tend to work directly in the development environment (rather than a sandbox). It may not seem like a big deal to switch applications for the benefits of CVS, but numerous times a day it could get tedious:
- Checkout module to sandbox in Windows Explorer using TortoiseCVS.
- Switch to Dreamweaver.
- Switch to Windows Explorer to Update/Commit.
- Copy files from sandbox to development environment.
I have been evaluating CVS for Dreamweaver. Its UI could stand a bit of spit-and-polish, but I think it might work for us. (I am open to suggestions.)
How do I convince the other developers of the benefits of using version control? That might be even trickier. The other developers seem not to experience my frustration because the files they are working with on dev are usually the most current versions. And although the low-tech versioning schema of storing dozens of backup files is messy and risky, it hasn’t actually presented any problems. A single developer tends to work on a single application, so no one, to my knowledge, has ever overwritten someone else’s updates. In this environment, do we really need CVS?
I think that we do. Although we haven’t had any problems with overwriting another developer’s code, or found out-dated pages with security issues floating around on the production server, why take those risks? Version control can solve those problems for us, as well as providing other benefits (such as accessing any previous version of the code).
I know developers who use version control at home for their personal ego web sites. Overzealous? Not really. I think any shop worth its salt uses a formal version control system.
No comments yet.
Leave a comment
Pages
Archives
- January 2012
- December 2011
- November 2011
- September 2011
- August 2011
- July 2011
- June 2011
- May 2011
- March 2011
- February 2011
- January 2011
- November 2010
- May 2010
- March 2010
- January 2010
- December 2009
- October 2009
- September 2009
- August 2009
- July 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008