source: spip-zone/_dev_/salvatore2/reattribution/trad.sh @ 77237

Last change on this file since 77237 was 77237, checked in by kent1@…, 6 years ago

Ce script est fonctionnel avec salvatore2, il faudrait que je réorganise l'ensemble

  • Property svn:executable set to *
File size: 1.3 KB
Line 
1#!/bin/sh
2# Script retrouvant le traducteur de chaque commit fait au nom de Salvatore
3# La derniere passe repose sur un fichier trad-mails.txt donnant leur mail,
4# chacune de ses lignes devant etre de la forme: nom%mail
5
6PREFIX=/tmp/ana-svn-${PWD##*/}-$$
7# tout recuperer
8svn log -v -l77200 > $PREFIX-1.txt
9
10# Ne prendre que les envois de salvatore
11awk '{if (substr($0,0,1)=="r") ok = ($3=="salvatore@rezo.net"); if (ok) print;}' $PREFIX-1.txt > $PREFIX-2.txt
12
13# mettre sur une seule ligne le numéro de commit et les fichiers concernés
14awk -F'[/ ]*' '{if (!$0) ok= 0; else {if (!ok) {if  ($0 == "Changed paths:") {print p; p=old; ok=1;} else old=$1} else p= p " " $NF;}}' $PREFIX-2.txt  > $PREFIX-3.txt
15
16# prendre les numeros des commit ayant le fichier XML et au moins un fichier php
17a=$(awk '/xml.*php/{print substr($1,2)}' $PREFIX-3.txt)
18
19# charger leur modifs et les traiter
20for i in $a
21do
22        t=$(svn diff -c$i | 
23        grep '^+.*<traducteur' |
24        sed 's/^.*nom="//;s/".*$//'|
25        sort  -u |
26        tr "\n" "%");
27echo "$i $t"
28done > $PREFIX-4.txt
29
30# Ne prendre que les commmit avec un seul traducteur
31# et chercher leur mail
32awk -F% '{if (NF == 2) print $1}' $PREFIX-4.txt | while read numero traducteur
33do
34        mail=$(grep "^$traducteur%" trad-mails.txt| awk -F% '{print $2}')
35        if [ -n "$mail" ]
36        then 
37            echo "$numero $mail"
38        fi
39done
40rm $PREFIX-?.txt
Note: See TracBrowser for help on using the repository browser.