cvsWhoWhatWhen

Summary

This is a wrapper for 'cvs log', automating some of the arguments and reformatting the output, including patchfile generation.

For instance, given a date in YYYYMMDD format, it "defaults" to morning (00:00) for the --start argument, but defaults to evening (23:59) for the --end argument. It also calculates the GMT offset for you, and figures out if your CVS client supports the -S log option. The --verbose option turns on visual diffs in the "detail" mode, and turns on comments in the "table" mode.

Usage


mzieg $ cvsWhoWhatWhen.pl --help
cvsWhoWhatWhen.pl 1.9, by Mark Zieg
Usage: cvsWhoWhatWhen.pl [--start yyyymmdd[hhmm]] [--end yyyymmdd[hhmm]]
       [--who name] [--verbose] [--table] [--patchfile pathname] [--help]

mzieg $ cvsWhoWhatWhen.pl --start 20030423
PROJ/tools/cm/Pseudocode.pl
    Rev:  1.7
    Date: 2003/04/23 14:07:15
    Who:  mzieg
    Mods: added 40 lines, deleted 0 lines
    Note: added usage

PROJ/tools/cm/cvsWhoWhatWhen.pl
    Rev:  1.8
    Date: 2003/04/29 16:25:12
    Who:  mzieg
    Mods: added 93 lines, deleted 31 lines
    Note: major cleanup

    Rev:  1.7
    Date: 2003/04/28 22:29:33
    Who:  mzieg
    Mods: added 270 lines, deleted 65 lines
    Note: added --table option; general cleanup

    Rev:  1.6
    Date: 2003/04/24 22:44:41
    Who:  sam
    Mods: added 13 lines, deleted 3 lines
    Note: fixed for Linux

    Rev:  1.5
    Date: 2003/04/24 22:07:26
    Who:  josh
    Mods: added 181 lines, deleted 39 lines
    Note: merged SGI fixes back into trunk

mzieg $ cvsWhoWhatWhen.pl --start 20030423 --who mzieg
PROJ/tools/cm/Pseudocode.pl
    Rev:  1.7
    Date: 2003/04/23 14:07:15
    Who:  mzieg
    Mods: added 40 lines, deleted 0 lines
    Note: added usage

PROJ/tools/cm/cvsWhoWhatWhen.pl
    Rev:  1.8
    Date: 2003/04/29 16:25:12
    Who:  mzieg
    Mods: added 93 lines, deleted 31 lines
    Note: major cleanup

    Rev:  1.7
    Date: 2003/04/28 22:29:33
    Who:  mzieg
    Mods: added 270 lines, deleted 65 lines
    Note: added --table option; general cleanup

mzieg $ cvsWhoWhatWhen.pl --start 20030423 --table
PROJ/tools/cm/Pseudocode.pl     mzieg 1.7 2003/04/23 14:07:15  +40   0
PROJ/tools/cm/cvsWhoWhatWhen.pl mzieg 1.8 2003/04/29 16:25:12  +93 -31
PROJ/tools/cm/cvsWhoWhatWhen.pl mzieg 1.7 2003/04/28 22:29:33 +270 -65
PROJ/tools/cm/cvsWhoWhatWhen.pl sam   1.6 2003/04/24 22:44:41  +13  -3
PROJ/tools/cm/cvsWhoWhatWhen.pl josh  1.5 2003/04/24 22:07:26 +181 -39

mzieg $ cvsWhoWhatWhen.pl --start 20030423 --who mzieg --table --verbose
PROJ/tools/cm/Pseudocode.pl     mzieg 1.7 2003/04/23 14:07:15  +40   0 added usage
PROJ/tools/cm/cvsWhoWhatWhen.pl mzieg 1.8 2003/04/29 16:25:12  +93 -31 major cleanup
PROJ/tools/cm/cvsWhoWhatWhen.pl mzieg 1.7 2003/04/28 22:29:33 +270 -65 added --table option; general cleanup
PROJ/tools/cm/cvsWhoWhatWhen.pl sam   1.6 2003/04/24 22:44:41  +13  -3 fixed for Linux
PROJ/tools/cm/cvsWhoWhatWhen.pl josh  1.5 2003/04/24 22:07:26 +181 -39 merged SGI fixes back into trunk

mzieg $ cvsWhoWhatWhen.pl --start 20030423 --end 20030423 --verbose
PROJ/tools/cm/Pseudocode.pl
    Rev:  1.7
    Date: 2003/04/23 14:07:15
    Who:  mzieg
    Mods: added 40 lines, deleted 0 lines
    Note: added usage

          cvs -Q diff -r1.6 -r1.7 Pseudocode.pl
          88a89,97
          >     #! @if do we have any arguments?
          >     if( $#ARGV != -1 )
          >     {
          >         #! yes, we have arguments -- print usage and die.
          >         Usage();
          >         exit( 1 );
          >     }
          >     #! endif
          >
            [snip]

Download

cvsWhoWhatWhen.pl

Author

Mark Zieg <mark@zieg.com>