By default, CVS will apply the checkin command in the current directory and
recursively downward. I've never had much of a problem with this as I am
usually checking in a single "change" at a time - all related changes, say a
single feature or bug fix. I have also recently adopted CVS's standard
ChangeLog format, which I believe is close to the GNU standard, which has a
separate comment for each file checked in even though the comments
themselves are saved in many files.
If you like, you can also restrict CVS to only checking in modified files in
the current directory (not recursing) by using the -l switch.
Again, check out the CVS repository for an example:
# cvs -d :pserver:[EMAIL PROTECTED]:/home2/cvsroot login
password 'guest'
# cvs -z3 -d :pserver:[EMAIL PROTECTED]:/home2/cvsroot co ccvs
I may have sent the wrong command last time (I left off the ccvs). Sorry
about that.
Also, the scripts which I am familiar with which compile log messages merge
identical log messages into a single entry, so you shouldn't notice an
effect from this there, though the redundant messages will take up a bit
more space than they would have using your method.
One of my reasons for preferring CVS's method is that when I check the log
for a file with this sort of log message, I can use it to trace down which
other files I changed and how I changed them when making some change.
As for CVS being open source, yes it is, so of course you can hack your
version if you like. As for lobbying for your change, of course you can do
that too, but somebody still has to do the work.
Derek
--
Derek Price CVS Solutions Architect
mailto:[EMAIL PROTECTED] OpenAvenue ( http://OpenAvenue.com )
Clarence Brown wrote:
> Derek:
>
> Thanks for the reply...
>
> I use a Korn shell script, and standard input redirection with
> RCS's CI command, to redirect a different log file for each
> source file. Here's a snip:
>
> cd log
> for i in *
> do
> cd ..
> ci -l$Rev $i <log/$i
> cd log
> done
>
> Later on all the log files are concatenated into a change log file.
>
> Is anything like this possible with CVS?
>
> One reason the single log file makes no sense to me, is that
> my projects are made up of High Level, Mid Level, and Low
> Level routines. Many of the Low Level routines, and some
> of the Mid Level Modules are used on unrelated products. This
> is how I attempt to accomplish code reuse. If I modify one of
> these Low/Mid level modules, with CVS as I understand it, it
> will get the generic project level comment, which is
> completely unacceptable.
>
> How do you get around this? I can see either having "Project
> Level" comments in the low level modules, or having essentially
> useless comments ... Actually the more I think about this the
> more I wonder what good at all comments at this level of
> granularity would be. How do you use them?
>
> Lets say I'm working on rev 3.5 of a project which for the most
> part might include high level changes to the user interface, but
> also might need to change the serial interrupt and modbus protocol
> routines. Of course the modbus and serial interrupt modules are
> used on many different projects. When I check them in why would
> I want unrelated comments about the High Level user interface
> routines specific to a project included in the low level serial interrupt
> module that is used on many different projects?
>
> This just doesn't make sense to me. It seems to guarantee that your
> comments will be uselessly vague and/or probably unrelated to the module
> which they are included in. In either case, this greatly
> reduces the utility of even bothering with those comments in the
> first place...
>
> What am I missing?
>
> Sorry if I sound peevish, but this is really disappointing. I
> was hoping CVS would make life easier by automating the tracking
> of changes, but I'm stunned that it would handle comments in this
> manner.
>
> Is CVS open source? I wonder if it would be possible to lobby for,
> or maybe even modify CVS myself to add a command line option or
> something to somehow associate log files like I'm used to?
>
> Cla.
>
> > -----Original Message-----
> > From: dprice [mailto:dprice]On Behalf Of Derek R. Price
> > Sent: Wednesday, June 14, 2000 8:55 PM
> > To: Clarence Brown
> > Cc: [EMAIL PROTECTED]
> > Subject: Re: Logging changes w/ CVS
> >
> >
> > Clarence Brown wrote:
> > [snip]
> >
> > > Since CVS is supposed to be for concurrent development
> > > among many developers, I'm surprised that the change logging
> > > features are no more advanced than plain RCS, or have I
> > > missed something?
> >
> > No, you haven't missed anything. CVS will only add log messages to a
> > group of files, by directory, at it's best resolution (well, all files
> > being checked in in a directory are grouped - if only one file was
> > modified in a directory, only one file will get the log
> > message, except
> > by user request).
> >
> > It does have the added advantage that it will keep track of files that
> > have change, so you won't have to (cvs -nq up).
> >
> > If I were doing this, I would probably have all the *.log files in the
> > directory concatted into a single file per directory and use
> > that for a
> > log message, but I am used to CVS's behavior.
> >
> > Check out the CVS repository if you are curious how this works:
> >
> > # cvs -d :pserver:[EMAIL PROTECTED]:/home2/cvsroot login
> > password 'guest'
> > # cvs -z3 -d :pserver:[EMAIL PROTECTED]:/home2/cvsroot co
> > ccvs
> >
> > Derek
> >
> > --
> > Derek Price CVS Solutions Architect
> > mailto:[EMAIL PROTECTED] OpenAvenue ( http://OpenAvenue.com )
> > --
> > Re: Graphics
> >
> > A picture is worth 10k words, but only if the words describe the
> > picture. Very few arbitrary sets of 10k words can be adequately
> > replaced with a picture.