-rw-r--r-- | scripts/cvslastchange | 25 | ||||
-rw-r--r-- | scripts/cvslastlog | 8 | ||||
-rw-r--r-- | scripts/cvsversion | 33 |
3 files changed, 66 insertions, 0 deletions
diff --git a/scripts/cvslastchange b/scripts/cvslastchange new file mode 100644 index 0000000..ca77297 --- a/dev/null +++ b/scripts/cvslastchange @@ -0,0 +1,25 @@ +#!/usr/bin/perl + +use File::Basename; + +die "need a filename!" if (!length($ARGV[0])); + +$cvsversion= dirname($0) . "/cvsversion"; +$version=`$cvsversion $ARGV[0]`; + +chop $version; +my $vold = $version; +my $vnew = $version; + +if ($version=~/^(.*)\.1$/) { + $vold = $1 if ($version=~/^([^.]\.[^.])\.[^.]\.[^.]$/); +} +else { + if ($version=~/^(.*)\.([^.]*)$/) { $v1 = $1; $v2 = $2 } + $v2old = ${v2}-1; + $vold = $v1 . '.' . $v2old; +} +print "cvs -f log -N -r$vnew $ARGV[0]\n"; +system("cvs -f log -N -r$vnew $ARGV[0]"); +print "cvs -f diff -bp -u -r$vold -r$vnew $ARGV[0]\n"; +system("cvs -f diff -bp -u -r$vold -r$vnew $ARGV[0]"); diff --git a/scripts/cvslastlog b/scripts/cvslastlog new file mode 100644 index 0000000..7676a6a --- a/dev/null +++ b/scripts/cvslastlog @@ -0,0 +1,8 @@ +#!/bin/sh +# cvslastlog - prints log of last commit for a file +# Depends on the version of the local file, not the one on the server +# Requires cvsversion +# David Faure, faure@kde.org + +cvs log -r`cvsversion $1` $1 + diff --git a/scripts/cvsversion b/scripts/cvsversion new file mode 100644 index 0000000..e14d16d --- a/dev/null +++ b/scripts/cvsversion @@ -0,0 +1,33 @@ +#!/bin/sh +d=`dirname $1` +f=`basename $1` +cat $d/CVS/Entries | grep "\/$f\/" | gawk 'BEGIN { FS = "/" } { print $3 }' +exit 0 + +=head1 NAME + +cvsversion -- Displays version of the file passed as argument. + +=head1 SYNOPSIS + + cvsversion <file> + +=head1 DESCRIPTION + +cvsversion displays the version in CVS of a file, as known by the local +checked out directory. No connection is required to the CVS server. +It can be used in other scripts, or simply to ask +for diffs using + +cvs diff -r <version> [-r <version>] <file> + +=head1 EXAMPLES + + cd baseline/kdelibs ; cvsversion configure.in + cvsversion baseline/kdelibs/configure.in + +=head1 AUTHOR + +David Faure <faure@kde.org> + +=cut
\ No newline at end of file |