Amazingly, it’s article 11 of 15 in my series on Ant Best Practices. Today’s practice is ‘Use version control’ and I can’t help but wonder if this one hasn’t dated a little. When the original article was written, Subversion didn’t exist, Perforce wasn’t free, and most people used CVS. I’m not going to get nostalgic about CVS. It was better than the alternatives (ever used SCCS?). I wouldn’t go out of my way to use it now.
So would anybody actually challenge this anymore? The original article by Eric M Burke suggests that people would version code but not the build files. I’d be gobsmacked if anybody did that nowadays. Drop me a comment or note at ‘firstname.lastname@example.org’ if you seriously disagree with version control for your build files. I’d really like to hear why.
I’m chapter and verse with Eric here:
- Version control your code
- Version control your build files
- Version control your binary dependencies (unless you have an external dependency manager). Don’t version control build output.
- And try not to mess around with checking things in and out of version control from your build. It generally gets ugly.
The sin of not using version control has done to death anyhow. Ask Joel.