#!/usr/bin/perl
use strict;
use warnings;
use SVN::Dump;
my $dump = SVN::Dump->new( { file => @ARGV ? $ARGV[0] : '-' } );
my $file = @ARGV ? $ARGV[0] : "on STDIN";
# compute some stats
my %type;
my %kind;
while ( my $record = $dump->next_record() ) {
$type{ $record->type() }++;
$kind{ $record->get_headers()->{'Node-action'} }++
if $record->type() eq 'node';
}
# print the results
print "Statistics for dump $file:\n",
" version: ", $dump->version(), "\n",
" uuid: ", $dump->uuid(), "\n",
" revisions: ", $type{revision}, "\n",
" nodes: ", $type{node}, "\n";
print map { sprintf " - %-7s: %d\n", $_, $kind{$_} } sort keys %kind;
syntax highlighted by Code2HTML, v. 0.9.1