]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blob - log_trace.pl
40d2fe85356e834452ae95657f00e716c6e02ada
[z.facultad/75.42/plaqui.git] / log_trace.pl
1 #!/usr/bin/perl
2 #
3 # Scrip que muestra en forma grafica la evolucion de los commits
4 #
5 # by Ricardo Markiewicz <rmarkie@fi.uba.ar>
6 #
7 # The PlaQui Development Team
8
9 my %hash, %users, %commits, $texto. $max;
10
11 if (shift eq "-d") {
12         $texto = `svn log > ChangeLog`;
13 }
14 $texto = `egrep "rev [0-9]+" ChangeLog`;
15
16 @lines = split(/\n/, $texto);
17
18 $max = -1;
19 foreach $line (@lines) {
20         @datos = split(/ /, $line);
21         $hash{$datos[5]}++;
22         $users{$datos[5]}{$datos[3]}++;
23         $commits{$datos[3]}++;
24         if ($hash{$datos[5]} > $max) {
25                 $max = $hash{$datos[5]};
26         }
27 }
28
29 print "PlaQui - Grafica de Progreso SVN\n";
30 print "--------------------------------\n\n";
31 print "Fecha\t\tCommits\n";
32
33 foreach $date (sort keys %hash) {
34         print "$date\t";
35         
36         $win = "";
37         $win_pts = -1;
38         foreach $name (keys %{$users{$date}}) {
39                 if ($users{$date}{$name} > $win_pts) {
40                         $win = $name;
41                         $win_pts = $users{$date}{$name};
42                 } else {
43                         if ($users{$date}{$name} == $win_pts) {
44                                 $win = $win."|".$name;
45                         }
46                 }
47         }
48
49         for($i=0; $i<$max/2; $i++) {
50                 if ($i < $hash{$date}/2) {
51                         print "*";
52                 } else {
53                         print " ";
54                 }
55         }
56         print "  ($win)";
57         print "\n";
58 }
59
60 print "\n";
61 print "Cantidad de commits por usuario:\n";
62 foreach $user (sort keys %commits) {
63         print "\t$user\t$commits{$user}\n";
64 }
65 print "\n";
66 print "( ) = Máximo/s Commiteador/es del Día | ";
67 print "* == 2 Commit\n";
68