branching

Daniel Berlin dberlin@dberlin.org
Fri Sep 20 17:45:00 GMT 2002


On Friday, September 20, 2002, at 08:18  PM, Andrew Cagney wrote:

>> In fact, if you really want to be advanced, and not deal with the 
>> slowdown on merged files that haven't been modified by you on the 
>> branch, but have been on the merge (This is hard to explain. If you 
>> merge from the head, and commit the result, it makes a new revision 
>> in the file, even if you haven't made changes on the branch. This 
>> eventually makes accessing the branch *quite* slow), you can just 
>> move the branch tags on the files you haven't modified on the branch, 
>> so that they refer to the new mainline revision.
>> Sounds more difficult complex than it is.
>
> You don't happen to have a script?  (Yes, for long lived branches 
> things do start to get slow).  The other option is to fix CVS I guess.

cvslines can do it (http://cvslines.sourceforge.net).
Looking at the perl, it does it like so:

sub branchtag
{
   my ($file, $spec, $rev) = @_;

   print TTYO "$Myname: set branch tag \"$spec\" to revision $rev...\n";

   &do_system("cvs tag -F -r $rev -b $spec $file");
}


....
   print TTYO "$Myname: first, spoof cvs with a branch tag update...\n";
       &branchtag($file, $branchtag, $rootrev);
       print TTYO "$Myname: next, spoof the cvs up-to-date check...\n";
       &do_system("cvs update $file"); # required for inane 
up-to-date-check

>

> Andrew
>
>



More information about the Gdb mailing list