This is the weekly build I'm referring to rather than the CC builds.  I really 
need to be sure it's clean.  If one file gets removed from the code repository 
(StarTeam for us), but it doesn't get cleaned out of the build directory, the 
repercussions could be humongous.  Maybe the file got deleted, but references 
to it in the application didn't get removed.  The build continues to work 
because we aren't doing a clean.  6 months down the line when we finally do a 
clean, the build stops working but the file is no where to be found.  I've been 
bit like this before and changed my evil ways ;0)




________________________________
From: David Weintraub <[email protected]>
To: Ant Users List <[email protected]>
Sent: Monday, June 1, 2009 12:46:19 PM
Subject: Re: Use of Sleep

On Mon, Jun 1, 2009 at 12:48 PM, Eric Fetzer <[email protected]> wrote:

> Will "updates" get rid of files that got deleted from the repository?


It all really depends upon the revision control system you're using. If the
revision control system tracks directories (like Subversion and ClearCase),
the answer is "yes", it will remove directories when they have been deleted.
If you use something like CVS, there's a special parameter on the "update"
command that removes empty directories. A few revision control systems might
not.

I find that if you do a few things, you'll be good about 99% of the time:
Don't update source files. Try to keep your built object files (like
classfiles) and your source files in separate directories. And, have a good
"clean" target. I usually do a clean before each build to eliminate rebuild
issues.

Where things mess up is when there's a major revamping of the whole project
structure where directories and files are  renamed, deleted, and moved. In
those cases, I am usually forced to do a checkout instead of an update.

Of course, the only way to be really, really sure is to do a checkout, but
if checkouts take hours, and your build process drags out, you'll end up
doing more harm than good.

A good compromise is to do an update on nomal continuous test builds for
speed, and when you actually build the release, use a clean checkout. That
will give you the development speed, but make sure your customers are
getting exactly everything in the build.

-- 
David Weintraub
[email protected]



      

Reply via email to