File cvsps-bk-cvs.mail of Package cvsps
Date: Tue, 18 Mar 2003 12:41:42 -0500 (EST)
From: David Mansfield <firstname.lastname@example.org>
Cc: Andrea Arcangeli <email@example.com>, Larry McVoy <firstname.lastname@example.org>
Subject: [ANNOUNCE] cvsps support for parsing BK->CVS kernel tree logs
I've just added (updated) lightly tested support for the BK->CVS kernel
trees to cvsps (www.cobite.com/cvsps) in version 2.0b4. The purpose of
this effort is to recreate the BK ChangeSet meta-data that is embedded in
the 'cvs log' data in these trees. BTW, cvsps is GPL software :-p. I'd
like to thank Larry and Andrea for helping me track down some issues with
this effort. This is still a BETA version, though, and I haven't given
this enough testing, so be nice. It works for me.
This version is tested and works against this morning's linux-2.4 and
linux-2.5 trees, and contains a few workarounds for specific issues in
those trees. See below for information on these problems.
The output of cvsps looks like:
Date: 2002/07/11 19:50:46
[PATCH] Fix several pdc202xx problems
Misnaming of 20270 as 20268R
Failure of LBA48 on 20262
Incorrect speed detection because the old driver used host not drive side
PDC202xx handling for quirks in udma reporting off some drives
LBA48 for PIO mode
You can also get a diff of this PatchSet using the '-g' option to cvsps.
There are currently 2,798 PatchSets in the linux-2.4 tree, and 8,382 in
the linux-2.5 tree.
Quick start instructions
Download, build and install cvsps from http://www.cobite.com/cvsps
Get the 2.0b4 (or latest) version.
Create a working directory with the tree of your choice:
cvs -d:pserver:email@example.com:/home/cvs co linux-2.4/Makefile
[ IMPORTANT: cvsps doesn't currently support an option for setting the
compression level so PLEASE, edit your .cvsrc and put 'cvs -z4' to enable
cvsps [-x] --bkcvs
This basically runs a 'cvs rlog' against the tree, parses, and caches all
of the revision history as PatchSets. It also outputs all of the
PatchSet summaries to stdout, so you may want to '>/dev/null' the first
Subsequent 'cvsps' commands do not need the '--bkcvs' unless you are
updating (-u, not completely tested) or rebuilding (-x, always works) the
Now you can use cvsps to browse the patchsets at your leisure, without
loading the cvs server (except to generate diffs). See cvsps -h for the
many ways you can slice and dice the information.
I welcome any feedback.
I have currently encountered two problems with the log format.
1) someone has committed sections of 'cvs log' text into the log. This
causes quite a headache for my parser, because false end-of-log-message
markers are present in the log. Fortunately, Larry has put a '(Logical
change x.yyyy)' marker at the end of each log message, see alse 2)
2) Not all log messages are terminated by a '(Logical change x.yyy)'
marker. A single revision of one file is missing this marker, Larry is
looking into why this may have happened.
Both of these problems are being worked around by my 'Adaptive Crap Filter
(notTM)' code. Don't look at it. It'll kill you.
| David Mansfield |
| firstname.lastname@example.org |