Thanks for taking time and your thorough explanation and examples. 
 
I usually do a general or selective update to my CVS working folders and get 
only the files that need to go into a build and tag the CVS module only if a 
build is successful.  Then do a 'cvs -f stat > cvs_stat.log' which shows my 
working revisions vs. repo revisions and I then pack the generated file into 
the war file as a record.  I was hoping that there was a way to generate a log 
that only shows my working copy files and their full path and their file 
revisions and I could do away with all the extra info that cvs -f stat 
generates.
 
 
I prefer to tag CVS after doing a build.  What if the build keeps breaking?  
Then each time until it's fixed, I have to do more steps tagging or moving the 
tags to the new fixed files as they're checked in, and many times I've 
forgotten to retag, therefore, fetching the wrong revs.  This method works for 
me better than tagging first then checking out based on a tag.  Utlimately, 
shouldn't the files in a working folder which contributed to a successful build 
be tagged?  I suppose either way results in the same outcome but the latter, as 
I described, leaves too much room for mistakes in my case it involves more 
work.  Technically, if you tag a module in the repository first then check out 
based on the tag, what happens, does CVS take a quick snapshot of the 
repository state and then tags it and during this time no one can check out and 
repository transaction would be slightly slower than normal?
 

 

Thanks

 

Rez
 
> Date: Tue, 24 Feb 2009 11:59:09 -0500
> From: [email protected]
> To: [email protected]
> CC: [email protected]
> Subject: Re: Script Help
> 
> Rez P wrote, On 02/23/2009 07:41 PM:
> > I'm curious as to how other build engineers keep a log, 
> > do you run cvs stat or cvs log also?
> > Is there a cvs command to print only the path and revsion
> > number without resotry to scripting?
> > 
> 
> I assume you are trying to have a method to pull back from CVS exactly what 
> was built for a release.
> 
> 1) use tags, they will make your life easier and sanity last longer.
> 
> 2) use the following method:
> cd /tmp/
> cvs checkout baselinename
> cvs tag build_tag_bla baselinename
> cvs release -d baselinename
> 
> cd /where/you/usualy/make/release/builds
> cvs checkout -rbuild_tag_bla baselinename
> #and for your method of sanity, even though it is no longer needed.
> cvs -f stat | grep "Repository revision" | gawk '{print $4 " " $3}'
> cd baselinename
> make\ant\buildsystem world
> 
> sleep better. :)
> 
> I have posted partial scripts to this list in the past for doing part of this 
> work.
> -- 
> Todd Denniston
> Crane Division, Naval Surface Warfare Center (NSWC Crane)
> Harnessing the Power of Technology for the Warfighter
> 
> 

_________________________________________________________________
Windows Live™ Hotmail®:…more than just e-mail. 
http://windowslive.com/explore?ocid=TXT_TAGLM_WL_t2_hm_justgotbetter_explore_022009

Reply via email to