info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cvs tag: some slightly counterintuitive behaviour


From: Todd Denniston
Subject: Re: cvs tag: some slightly counterintuitive behaviour
Date: Fri, 26 Mar 2004 09:14:40 -0500

Andy Jones wrote:
> 
> >Why can't you just choose the files you want to tag and run the TAG
> >command only on those. This way only those files get tagged and not the
> >complete module, which is not want you as it is want to happen.
> 
> Because I have 12,766 files, and I want to tag all but about 30 of them.  
> Working out which 30 is a long and laborious process of checking by hand.  It 
> would have been nice if I could have just worried about getting the sandbox 
> to a given state and then tagging that state.
> 
> What I'll end up doing is compiling a list of the 30 as I go along, tagging 
> everything and then doing something like:
> 
> cat badlist.txt | xargs cvs tag -d <tag>
> 
> As I said, it's not really a big deal, just a small surprise.

how about taking that badlist.txt and using it thus:
cd sandbox
export BASE_SCRIPTS_DIR=`pwd`
find . -type f > ../wholelist.txt
grep -v CVS\/ ../wholelist.txt > ../NoCVSlist.txt
grep -v -f /whereever/badlist.txt ../NoCVSlist.txt > ../TagThese.txt
echo "EOF" >> ../TagThese.txt
apply_tag()
{
  read INPUTLINE
  while [[ "$INPUTLINE" != "EOF" ]]
  do
    #the following should tag each file individualy so we only tag those we 
    #want to.
    (cd $BASE_SCRIPTS_DIR/;cvs tag -l $TAGNAME $INPUTLINE)
    read INPUTLINE
  done
  (cd $BASE_SCRIPTS_DIR; echo "y" |cvs release -d scripts)
}
apply_tag < TagThese.txt

takes a bit more scripting but you never delete anything out of cvs that way.
you might be able to tag more at a time, but I always worry about going beyond
the shell command limits with big lists.
I had a set of scripts that generated the 'badlist.txt' for me.

-- 
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane) 
Harnessing the Power of Technology for the Warfighter




reply via email to

[Prev in Thread] Current Thread [Next in Thread]