Date: Thu, 23 May 1996 16:25:37 -0700 (PDT) From: "Rodney W. Grimes" <rgrimes@GndRsh.aac.dev.com> To: rkw@dataplex.net (Richard Wackerbarth) Cc: phk@critter.tfs.com, wosch@cs.tu-berlin.de, current@FreeBSD.ORG Subject: Re: Re(2): CTM & cvs update Message-ID: <199605232325.QAA17471@GndRsh.aac.dev.com> In-Reply-To: <n1379251172.91030@Richard Wackerbarth> from Richard Wackerbarth at "May 23, 96 05:08:19 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
> Wolfram Schneider writes: > > > > A full cvs update takes me 1952.43 real 92.37 user 190.84 sys > > > This is slow. Can I use the output from ctm_rmail for a faster > > > update? E.g.: > > > > > > $ ctm_rmail [options] > ctm_output_log_file 2>&1 > > > $ cvs update `egrep ' > .. (src|ports)/' <ctm_output_log_file> > > | > awk '{print $NF}' | sed 's/,v$//'` > > Poul-Henning Kamp replies: > > > If you make an option to ctm_rmail to do it, I'll review and approve even if > you write it in COBOL :-) > > Please don't add more bloat to ctm_rmail. His solution seems fine and in the > Unix tradition. > > As I read his message, he simply wants to know if it would work. No, it would not for 3 reasons: a) Addition of directories to the cvs repository would not exist in the checked out tree so the ``cvs update pathname'' would fail. b) Removal of files/directories from the cvs tree cause the files to go into Attic subdirectories, the above would serious fail there (some massaging and adding the -P option to the cvs udpate command could fix this). c) Other problems I haven't though of yet. This is not to say that the desired results could not be obtained, but it is a fair bit more complex than the above 1 line script. I don't run ctm, but here is a better filter to replace the above ``awk '{print $NF}' with (this is written for sup -v >&logfile): /\/Attic\// { next; } /CVSROOT\// { next; } /^SUP Receiving file / { print $NF; } /^SUP Deleted file / { print $NF; } Then a little massaging with sed to rip off the filename components and a pass through sort -u to get down to just the directories you need to update, and finally a script that checks how far down a hierachy it can cd before running a cvs update -P and you have your desired results. -- Rod Grimes rgrimes@gndrsh.aac.dev.com Accurate Automation Company Reliable computers for FreeBSD
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199605232325.QAA17471>