]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - log_trace.pl
* Se agrega opcion -d . Si es usada se arma todo en base a la salida del "svn log...
[z.facultad/75.42/plaqui.git] / log_trace.pl
index f1716d34dafb86cd0116d1e9fb28c73e19f4521f..f4a2d017a5feca0b35f3a673c8eceabb6d0ac2dc 100755 (executable)
@@ -6,25 +6,57 @@
 #
 # The PlaQui Development Team
 
-#open("log.txt", LOG);
-#@lines = <LOG>;
-#close(LOG);
+my %hash, %users, $texto. $max;
 
-$texto = `svn log | grep rev | grep lines`;
+if (shift eq "-d") {
+       $texto = `svn log | grep rev | grep line`;
+} else {
+       $texto = `cat ChangeLog | grep rev | grep line`;
+}
 @lines = split(/\n/, $texto);
-my %hash;
 
+$max = -1;
 foreach $line (@lines) {
        @datos = split(/ /, $line);
        $hash{$datos[5]}++;
+       $users{$datos[5]}{$datos[3]}++;
+       if ($hash{$datos[5]} > $max) {
+               $max = $hash{$datos[5]};
+       }
 }
 
 print "PlaQui - Grafica de Progreso SVN\n";
+print "--------------------------------\n\n";
+print "Fech\t\tCommits\n";
+
 foreach $date (sort keys %hash) {
        print "$date\t";
-       for($i=0; $i<$hash{$date}; $i++) {
-               print "*";
+       
+       $win = "";
+       $win_pts = -1;
+       foreach $name (keys %{$users{$date}}) {
+               if ($users{$date}{$name} > $win_pts) {
+                       $win = $name;
+                       $win_pts = $users{$date}{$name};
+               } else {
+                       if ($users{$date}{$name} == $win_pts) {
+                               $win = $win."|".$name;
+                       }
+               }
        }
+
+       for($i=0; $i<$max; $i++) {
+               if ($i < $hash{$date}) {
+                       print "*";
+               } else {
+                       print " ";
+               }
+       }
+       print "  ($win)";
        print "\n";
 }
 
+print "\n";
+print "( ) = Máximo/s Commiteador/es del Día\n";
+print "* == 1 Commit\n";
+