Subject: CVS
To: None <netbsd-help@netbsd.org>
From: Richard Rauch <rkr@rkr.kcnet.com>
List: netbsd-help
Date: 02/19/2000 17:06:36
This isn't really a NetBSD issue, per se.  But I couldn't find an answer
on some CVS FAQ's that I peered at, and didn't see any mailing lists
mentioned.  (And I really am not a fan of Abusenet...(^&)  Besides, NetBSD
should have a good pool of CVS expertise...

Anyway, I'd like to do the following on CVS commit:

 (a) Diff the new & most-recent commit.
 (b) Grab the last log entry for the most-recent commit.
 (c) Combine (a) & (b) as the ``prompt'' ci msg (with CVS> prefixes).
 (d) Append the (final, edited) commit message to an accmulator file.

(d) is less important, and obviously can be tucked into verifymsg.

(In particular, it should be noted that while my machine will hold the CVS
repository, there are 3 other users who will need to make changes from
remote systems.  Specifically, they will be using ssh & the Internet to
connect to my computer.)


One possibility might be to use the module -i option to (re)generate the
file named rcsinfo by.  While this might be workable, it has obvious
problems if two different people are committing different files
concurrently.

Another possibility might be to move the cvs binary to, say, cvs.real.  
Then create a new cvs command that redirects commit commands.

editinfo appears to cover this more or less, but it's obsolete and might
assume that you are locally logged in.

rcsinfo, if it could specify a command with commit params, would be
ideal.  But, it apparently can only name a constant filename (the
``constant'' characteristic keeps me from using the portal filesystem to
solve the problem).


What do more experienced heads think of as the best way to do this?  Or
should it just be dropped?  (I once set up scripts to do this with RCS,
and personally found it very helpful to get a complete reminder of
changes, plus the log-entries for inertia.)


  "I probably don't know what I'm talking about."  --rkr@rkr.kcnet.com