[Top][All Lists]

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

Re: Looking for info on cvs logging

From: Mark D. Baushke
Subject: Re: Looking for info on cvs logging
Date: Tue, 28 Mar 2006 10:03:25 -0800

Hash: SHA1

Norman Crisp <address@hidden> writes:

> Is there any sort of internal id generated
> within CVS that can be picked up using cvs log
> or any other cvs command?

The cvs 1.12.12 (or later) version of CVS provides
a commitid. The NEWS file for 1.12.12 said this:

| * CVS creates a unique session id that gets
|   written to the RCS files during import and
|   commit. When committing several files at once,
|   they all get the same 'commitid'. The commitid
|   becomes visible with log and status commands,
|   and is derived and compatible with the cvsnt
|   project.

The value of the commitid for 1.12.12 was not as
good as it should have been, so the value in
1.12.13 has been improved to go from a hex value
to a base62 value with more bits in it.

A patch for RCS to create and manipulate the same
commitid is available in the
contrib/rcs-5.7-commitid.patch file in the cvs
1.12.13 distribution or may be downloaded from the
CVS repository on

> For the purpose of metrics gathering I would
> like to be able to group a block of files that
> are committed together with a single "change set
> id". I have implemented a commit template that
> prompts the designers for information such as
> inspection effort, defects found etc. The
> problem is that when using cvs log, I can
> retrieve this information for metrics
> calculations, but I end up getting the total
> time on each file, and not the total time for
> the group of files. Of course, this throws the
> numbers way off. If an internal id was generated
> I could gather the numbers once per id.

Yes, the current methodod of determining a "change
set id" would need to consider a comparison of the
log message for any revisions committed by the
same user within a 'few seconds' of the same time.
(At worst case, there would be a one-second drift
across all of the directories committed in a
single commit for the repository.)

The CVSNT folks added commitid to their fork of
CVS in late 2002. I believe it was first released
with CVSNT 2.0.15.

        -- Mark
Version: GnuPG v1.4.2.2 (FreeBSD)


reply via email to

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