Currently the git mirror mangles all email addresses to something like this:

Author: janus <janus@138bc75d-0d04-0410-961f-82ee72b054a4>  2013-04-13 12:52:31
Committer: janus <janus@138bc75d-0d04-0410-961f-82ee72b054a4>  2013-04-13 
12:52:31
Parent: 93ff53d3fe85b302fc6099f14066a533af57eeac (* emit-rtl.c (remove_insn): 
Do not call df_insn_delete here.)

This looks confusing and ugly.

Apparently it can be fixed by setting:
 git config svn.authorsfile /var/tmp/gcc_authors
on the server. Where the gcc_authors file should be of the form:
 svnname = Joe User <[email protected]>

I've attached a gcc_authors file (gathered from various sources), that could be
used as a start.

To fix all previous git commits on the mirror one may use the attached
git-svn-fix-author script.

-- 
Markus
aaronavay62 = Aaron W. LaFramboise <[email protected]>
3dw4rd = Edward Smith-Rowland <[email protected]>
emsr = Edward Smith-Rowland <[email protected]>
aaw = Ollie Wild <[email protected]>
abel = Andrey Belevantsev <[email protected]>
adam = Adam Megacz <[email protected]>
adambnemet = Adam Nemet <[email protected]>
aesok = Anatoly Sokolov <[email protected]>
aj = Andreas Jaeger <[email protected]>
aldyh = Aldy Hernandez <[email protected]>
amacleod = Andrew MacLeod <[email protected]>
amodra = Alan Modra <[email protected]>
amonakov = Alexander Monakov <[email protected]>
ams = Andrew Stubbs <[email protected]>
andi = Andi Kleen <[email protected]>
ak = Andi Kleen  <[email protected]>
andrea.bona = Andrea Bona <[email protected]>
andrea.ornstein = Andrea Ornstein <[email protected]>
krebbel = Andreas Krebbel <[email protected]>
andreast = Andreas Tobler <[email protected]>
asutton = Andrew Sutton <[email protected]>
amker = Amker Cheng <[email protected]>
andrew = Andrew Jenner <[email protected]>
ansgar = Ansgar Esztermann <[email protected]>
antoniu.pop = Antoniu Pop <[email protected]>
aoliva = Alexandre Oliva <aolivaredhat.com>
aph = Andrew Haley <[email protected]>
augustine.sterling = Sterling Augustine <[email protected]>
austern = Matt Austern <[email protected]>
avr = Georg-Johann Lay <[email protected]>
gjl = Georg-Johann Lay <[email protected]>
ayers = David Ayers <[email protected]>
baldrick = Duncan Sands <[email protected]>
bangerth = Wolfgang Bangerth <[email protected]>
basile = Basile Starynkevitch <[email protected]>
benoit.dupont-de-dinechin = Benoit Dupont de Dinechin 
<[email protected]>
bergner = Peter Bergner <[email protected]>
bernds = Bernd Schmidt <[email protected]>
bernie = Bernardo Innocenti <[email protected]>
bin.cheng = Bin Cheng <[email protected]>
bje = Ben Elliston <[email protected]>
bkorb = Bruce Korb <[email protected]>
bkoz = Benjamin Kosnik <[email protected]>
bmei = Bingfeng Mei <[email protected]>
bonzini = Paolo Bonzini <[email protected]>
bosch = Geert Bosch <[email protected]>
bowdidge = Robert Bowdidge <[email protected]>
brendan = Brendan Kehoe <[email protected]>
brobecker = Joel Brobecker <[email protected]>
brolley = Dave Brolley <[email protected]>
brooks.moses = Brooks Moses <[email protected]>
burnus = Tobias Burnus <[email protected]>
bviyer = Balaji V. Iyer  <[email protected]>
cagney = Andrew Cagney <[email protected]>
canqun = Canqun Yang <[email protected]>
carlo = Carlo Wood <[email protected]>
carlos = Carlos O'Donell <[email protected]>
carrot = Wei Guozhi <[email protected]>
ccc94453 = Rask Ingemann Lambertsen <[email protected]>
cchavva = Chandra Chavva <[email protected]>
ccorn = Christian Cornelssen <[email protected]>
ccoutant = Cary Coutant <[email protected]>
cfairles = Chris Fairles <[email protected]>
cgd = Chris Demetriou <[email protected]>
cgf = Christopher Faylor <[email protected]>
changpeng.fang = Changpeng Fang <[email protected]>
charlet = Arnaud Charlet <[email protected]>
chertykov = Denis Chertykov <[email protected]>
chrbr = Christian Bruel <[email protected]>
cyon = Christophe Lyon <[email protected]>
clm = Catherine Moore <[email protected]>
cltang = Chung-Lin Tang <[email protected]>
config-patches = Ben Elliston <[email protected]>
crowl = Lawrence Crowl <[email protected]>
ctice = Caroline Tice <[email protected]>
d = Daniel Kraft <[email protected]>
dann = Dan Nicolaescu <[email protected]>
dant = Daniel Towner <[email protected]>
dave.anglin = John David Anglin <[email protected]>
danglin = John David Anglin <[email protected]>
davek = Dave Korn <[email protected]>
davem = David S. Miller <[email protected]>
David.Billinghurst = David Billinghurst <[email protected]>
david.daney = David Daney <[email protected]>
david.yuste = David Yuste <[email protected]>
davidu = David Ung <[email protected]>
davidxl = Xinliang David Li <[email protected]>
dberlin = Daniel Berlin <[email protected]>
dcarrera = Daniel Carrera <[email protected]>
dewar = Robert Dewar <[email protected]>
dhazeghi = Dara Hazeghi <[email protected]>
dj = DJ Delorie <[email protected]>
dje.gcc = David Edelsohn <[email protected]>
dje = Doug Evans <[email protected]>
dmueller = Dirk Mueller <[email protected]>
dnovillo = Diego Novillo <[email protected]>
dodji = Dodji Seketeli <[email protected]>
doko = Matthias Klose <[email protected]>
dorit = Dorit Nuzman <[email protected]>
doug.gregor = Doug Gregor <[email protected]>
dougkwan = Doug Kwan <[email protected]>
dpatel = Devang Patel <[email protected]>
drepper = Ulrich Drepper <[email protected]>
drow = Daniel Jacobowitz <[email protected]>
dvyukov = Dmitry Vyukov <[email protected]>
eager = Michael Eager <[email protected]>
ebotcazou = Eric Botcazou <[email protected]>
echristo = Eric Christopher <[email protected]>
edmar = Edmar Wienskoski <[email protected]>
ehrhardt = Christian Ehrhardt <[email protected]>
eraman = Easwaran Raman <[email protected]>
eres = Revital Eres <[email protected]>
eric.weddington = Eric Weddington <[email protected]>
ericb = Eric Blake <[email protected]>
erik.edelmann = Erik Edelmann <[email protected]>
erven.rohou = Erven Rohou <[email protected]>
espie = Marc Espie <[email protected]>
espindola = Rafael ?vila de Esp?ndola <[email protected]>
fabien = Fabien Ch?ne <[email protected]>
falk = Falk Hueffner <[email protected]>
fche = Frank Ch. Eigler <[email protected]>
fdumont = Fran?ois Dumont <[email protected]>
fengwang = Feng Wang <[email protected]>
fitzsim = Thomas Fitzsimmons <[email protected]>
fjahanian = Fariborz Jahanian <[email protected]>
fjh = Fergus Henderson <[email protected]>
ford = Brian Ford <[email protected]>
franke.daniel = Daniel Franke <[email protected]>
franz.sirl-kernel = Franz Sirl <[email protected]>
froydnj = Nathan Froyd <[email protected]>
fu = Chao-ying Fu <[email protected]>
fw = Florian Weimer <[email protected]>
fxcoudert = Fran?ois-Xavier Coudert <[email protected]>
gabriele.svelto = Gabriele Svelto <[email protected]>
Ganesh.Gopalasubramanian = Gopalasubramanian Ganesh 
<[email protected]>
gary = Gary Funck <[email protected]>
gchare = Gabriel Charette <[email protected]>
gccadmin = gccadmin <[email protected]>
gdr = Gabriel Dos Reis <[email protected]>
geoffk = Geoffrey Keating <[email protected]>
george = George Helffrich <[email protected]>
gerald = Gerald Pfeifer <[email protected]>
ghazi = Kaveh Ghazi <[email protected]>
gingell = Matthew Gingell <[email protected]>
gingold = Tristan Gingold <[email protected]>
giovannibajo = Giovanni Bajo <[email protected]>
gkm = Greg McGary <[email protected]>
gandalf = Andrew John Hughes <[email protected]>
meissner = Michael Meissner  <[email protected]>
gnustuff = Mohan Embar <[email protected]>
graham.stott = Graham Stott <[email protected]>
green = Anthony Green <[email protected]>
greta.yorsh = Greta Yorsh <[email protected]>
gretay = Greta Yorsh <[email protected]>
grosser = Tobias Grosser <[email protected]>
hagog = Mostafa Hagog <[email protected]>
hainque = Olivier Hainque <[email protected]>
hariharan.gcc = Hariharan Sandanagobalane <[email protected]>
harsha.jagasia = Harsha Jagasia <[email protected]>
harshit = Harshit Chopra <[email protected]>
hboehm = Hans Boehm <[email protected]>
hiller = Matthew Hiller <[email protected]>
hjl.tools = H.J. Lu <[email protected]>
hp = Hans-Peter Nilsson <[email protected]>
hpenner = Hartmut Penner <[email protected]>
hutchinsonandy = Andy Hutchinson <[email protected]>
iain = Iain Sandoe <[email protected]>
ian = Ian Lance Taylor <[email protected]>
ibolton = Ian Bolton <[email protected]>
ian.bolton = Ian Dall <[email protected]>
irar = Ira Rosen <[email protected]>
jakub = Jakub Jelinek <[email protected]>
jgreenhalgh = James Greenhalgh <[email protected]>
janisjo = Jan Kratochvil <[email protected]>
jan.kratochvil = Jan Sjodin <[email protected]>
jan.sjodin = Janis Johnson <[email protected]>
janus = Janus Weil <[email protected]>
jason = Jason Merrill <[email protected]>
jasonwucj = Chung-Ju Wu <[email protected]>
jayant.sonar = Jayant Sonar <[email protected]>
jbeulich = Janne Blomqvist <[email protected]>
jb = Jan Beulich <[email protected]>
jbglaw = Jan-Benedict Glaw <[email protected]>
jconner = Josh Conner <[email protected]>
jdennett = James Dennett <[email protected]>
jfreeman08 = John Freeman <[email protected]>
jgrimm2 = Jon Grimm <[email protected]>
jh = Jan Hubicka <[email protected]>
hubicka = Jan Hubicka <[email protected]>
jiangning.liu = Jiangning Liu <[email protected]>
jim = Jim Meyering <[email protected]>
jkj = Kean Johnston <[email protected]>
jknaggs = Jeff Knaggs <[email protected]>
jle = Jason Eckhardt <[email protected]>
jlquinn = Jerry Quinn <[email protected]>
jmdavis = Bud Davis <[email protected]>
joel = Joel Sherrill <[email protected]>
joern.rennecke = Joern Rennecke <[email protected]>
amylaar = Jorn Wolfgang Rennecke <[email protected]>
jye2 = Joey Ye <[email protected]>
john = John Wehle <[email protected]>
jon = Jon Beniston <[email protected]>
jonz = Jon Ziegler <[email protected]>
josef.zlomek = Josef Zlomek <[email protected]>
joseph = Joseph Myers <[email protected]>
jsm28 = Joseph Myers <[email protected]>
jsturm = Jeff Sturm <[email protected]>
jules = Julian Brown <[email protected]>
jvdelisle = Jerry DeLisle <[email protected]>
jwlemke = James Lemke <[email protected]>
jyasskin = Jeffrey Yasskin <[email protected]>
jzhang918 = Jie Zhang <[email protected]>
kaushik.phatak = Kaushik Phatak <[email protected]>
kazu = Kazu Hirata <[email protected]>
kcc = Kostya Serebryany <[email protected]>
kcook = R. Kelley Cook <[email protected]>
kenner = Richard Kenner <[email protected]>
kevinb = Kevin Williams <[email protected]>
kevin.williams = Kevin Buettner <[email protected]>
kirill.yuakhin = Kirill Yukhin <[email protected]>
kyukhin = Kirill Yukhin <[email protected]>
kkojima = Kaz Kojima <[email protected]>
konqueror = Michael Koch <[email protected]>
konrad.trifunovic = Konrad Trifunovic <[email protected]>
kraai = Matt Kraai <[email protected]>
krab = Kresten Krab Thorup <[email protected]>
krister.walfridsson = Kris Van Hees <[email protected]>
kris.van.hees = Krister Walfridsson <[email protected]>
ktietz = Kai Tietz <[email protected]>
kuba = Jakub Staszak <[email protected]>
ktkachovv = Kyrylo Tkachov <[email protected]>
langton2 = Asher Langton <[email protected]>
laurent = Laurent Guerby <[email protected]>
laurynas.biveinis = Laurynas Biveinis <[email protected]>
law = Jeff Law <[email protected]>
lcwu = Le-Chun Wu <[email protected]>
lee.millward = Lee Millward <[email protected]>
lerdsuwa = Kriang Lerdsuwanakij <[email protected]>
liqin.gcc = Chen Liqin <[email protected]>
ljrittle = Loren J. Rittle <[email protected]>
loewis = Martin v. L?wis <[email protected]>
loki = Gabor Loki <[email protected]>
luisgpm = Luis Machado <[email protected]>
m.hayes = Michael Hayes <[email protected]>
macro = Maciej W. Rozycki <[email protected]>
manu = Manuel L?pez-Ib??ez <[email protected]>
marc.glisse = Marc Glisse <[email protected]>
glisse = Marc Glisse <[email protected]>
mshawcroft = Marcus Shawcroft <[email protected]>
mark = Mark Wielaard <[email protected]>
mark = Mark G. Adams <[email protected]>
mark.g.adams = Mark Mitchell <[email protected]>
matt = Matt Thomas <[email protected]>
matthew.gretton-dann = Matthew Gretton-Dann <[email protected]>
matz = Michael Matz <[email protected]>
mkuvyrkov = Maxim Kuvyrkov <[email protected]>
mckinlay = Bryce McKinlay <[email protected]>
meadori = Meador Inge <[email protected]>
meheff = Mark Heffernan <[email protected]>
mh = Manfred Hollstein <[email protected]>
mikael.morin = Mikael Morin <[email protected]>
mikestump = Mike Stump <[email protected]>
mingjie.xing = Mingjie Xing <[email protected]>
mjambor = Martin Jambor <[email protected]>
jamborm = Martin Jambor <[email protected]>
msachs = Matthew Sachs <[email protected]>
msokolov = Michael Sokolov <[email protected]>
nathan = Nathan Sidwell <[email protected]>
Naveen.Hurugalawadi = Naveen H.S <[email protected]>
naveenh = Naveen H.S <[email protected]>
neil = Neil Booth <[email protected]>
nemokingdom = Li Feng <[email protected]>
nenad = Nenad Vukicevic <[email protected]>
neroden = Nathanael Nerode <[email protected]>
ni1d = Paul Koning <[email protected]>
nickc = Nick Clifton <[email protected]>
nico = Nicolas Pitre <[email protected]>
nicola.pero = Nicola Pero <[email protected]>
nvachhar = Neil Vachharajani <[email protected]>
obrien = David O'Brien <[email protected]>
olegendo = Oleg Endo <[email protected]>
ook = Zdenek Dvorak <[email protected]>
paolo.carlini = Paolo Carlini <[email protected]>
paul = Paul Brook <[email protected]>
pault = Paul Thomas <[email protected]>
pb = Phil Blundell <[email protected]>
pcg = Marc Lehmann <[email protected]>
pearly.zhao = Shujing Zhao <[email protected]>
per = Per Bothner <[email protected]>
phdm = Philippe De Muyter <[email protected]>
phillip.m.jordan = Phillip Jordan <[email protected]>
phython = James A. Morrison <[email protected]>
pinskia = Andrew Pinski <[email protected]>
pme = Phil Edwards <[email protected]>
pmuldoon = Phil Muldoon <[email protected]>
pogma = Peter O'Gorman <[email protected]>
polacek = Marek Polacek <[email protected]>
mpolacek = Marek Polacek <[email protected]>
Pompapathi.V.Gadad = Pompapathi V Gadad  <[email protected]>
ppluzhnikov = Paul Pluzhnikov <[email protected]>
pronesto = Fernando Pereira <[email protected]>
pthaugen = Philipp Thomas <[email protected]>
pth = Pat Haugen <[email protected]>
quentin.neill.gnu = Quentin Neill <[email protected]>
raksit = Raksit Ashok <[email protected]>
ralf.corsepius = Ralf Corsepius <[email protected]>
Ralf.Wildenhues = Ralf Wildenhues <[email protected]>
ramana.radhakrishnan = Ramana Radhakrishnan <[email protected]>
razya = Razya Ladelsky <[email protected]>
rcl = Ralph Loader <[email protected]>
rdsandiford = Richard Sandiford <[email protected]>
rsandifo = Richard Sandiford <[email protected]>
redi = Jonathan Wakely <[email protected]>
rep.dot.nop = Bernhard Reutner-Fischer <[email protected]>
rguenther = Richard Biener <[email protected]>
rearnshaw = Richard Earnshaw <[email protected]>
rmathew = Ranjit Mathew <[email protected]>
rms = Richard Stallman <[email protected]>
ro = Rainer Orth <[email protected]>
rodrigc = Craig Rodrigues <[email protected]>
roger = Roger Sayle <[email protected]>
roland = Roland McGrath <[email protected]>
rolfwr = Rolf Rasmussen <[email protected]>
rth = Richard Henderson <[email protected]>
rupp = Douglas Rupp <[email protected]>
rus = Silvius Rus <[email protected]>
sabre = Chris Lattner <[email protected]>
saliu = Sa Liu <[email protected]>
sameera.deshpande = Samuel Tardieu <[email protected]>
sam = Sameera Deshpande <[email protected]>
sandra = Sandra Loosemore <[email protected]>
schwab = Andreas Schwab <[email protected]>
scottb = Scott Robert Ladd <[email protected]>
scott.ladd = Scott Bambrough <[email protected]>
sebastian.pop = Sebastian Pop <[email protected]>
sebastien = Sebastien Bourdeauducq <[email protected]>
segher = Segher Boessenkool <[email protected]>
sje = Steve Ellcey <[email protected]>
seongbae.park = Seongbae Park <[email protected]>
sgk = Steven G. Kargl <[email protected]>
shenders = Stuart Henderson <[email protected]>
simartin = Simon Martin <[email protected]>
simonb = Simon Baldwin <[email protected]>
singhai = Sharad Singhai <[email protected]>
singler = Johannes Singler <[email protected]>
sofiane = Sofiane Naci <[email protected]>
stanshebs = Stan Shebs <[email protected]>
stcarrez = Stephane Carrez <[email protected]>
stephen.webb = Stephen M. Webb <[email protected]>
steven = Steven Bosscher <[email protected]>
stuart = Stuart Hastings <[email protected]>
svein = Svein Seldal <[email protected]>
tbily = Tomas Bily <[email protected]>
tbm = Martin Michlmayr <[email protected]>
tege = Torbjorn Granlund <[email protected]>
tejas.belagod = Tim Josling <[email protected]>
belagod = Tejas Belagod <[email protected]>
tejohnson = Teresa Johnson <[email protected]>
xguo = Xuepeng Guo <[email protected]>
thierry.lafage = Thierry Lafage <[email protected]>
thomas = Thomas Schwinge <[email protected]>
thorpej = Jason Thorpe <[email protected]>
ths = Thiemo Seufer <[email protected]>
tiloschwarz = Tilo Schwarz <[email protected]>
tkoenig = Thomas K?nig <[email protected]>
tlaurenzo = Terry Laurenzo <[email protected]>
tmsriram = Sriraman Tallam <[email protected]>
tneumann = Thomas Neumann <[email protected]>
tobias.schlueter = Tobias Schl?ter <[email protected]>
tom = Tom de Vries <[email protected]>
vries = Tom de Vries <[email protected]>
toon = Toon Moene <[email protected]>
trevor_smigiel = Trevor Smigiel <[email protected]>
trix = Tom Rix <[email protected]>
tromey = Tom Tromey <[email protected]>
uros = Uros Bizjak <[email protected]>
ubizjak = Uros Bizjak <[email protected]>
uweigand = Ulrich Weigand <[email protected]>
v.reichelt = Volker Reichelt <[email protected]>
venkataramanan.kumar = Venkataramanan Kumar <[email protected]>
victork = Victor Kaplansky <[email protected]>
vladimir = Vladimir Prus <[email protected]>
vmakarov = Vladimir Makarov <[email protected]>
walt = Walter Lee <[email protected]>
wcohen = William Cohen <[email protected]>
wilson = Jim Wilson <[email protected]>
wmi = Wei Mi <[email protected]>
wschmidt = William Schmidt  <[email protected]>
yao = Yao Qi <[email protected]>
yufeng.zhang = Yufeng Zhang <[email protected]>
zackw = Zack Weinberg <[email protected]>
zadeck = Kenneth Zadeck <[email protected]>
zaks = Ayal Zaks <[email protected]>
ziga.mahkovec = Ziga Mahkovec <[email protected]>
zippel = Roman Zippel <[email protected]>
(no author) = No Author <[email protected]>
#!/bin/bash

authors_file="/var/tmp/gcc_authors"

git filter-branch -f --env-filter '

get_name () {
  grep -m1 "^$1" $authors_file |
  sed "s/^.*=\(.*\) <.*>$/\1/"
}

get_email () {
  grep -m1 "^$1" $authors_file |
  sed "s/^.*=.* <\(.*\)>$/\1/"
}

name=$(get_name $GIT_COMMITTER_NAME)
mail=$(get_email $GIT_COMMITTER_NAME)

if [ -n "$name" ] && [ -n "$mail" ]; then
  export GIT_AUTHOR_NAME=$name &&
  export GIT_AUTHOR_EMAIL=$mail &&
  export GIT_COMMITTER_NAME=$name &&
  export GIT_COMMITTER_EMAIL=$mail &&
  echo " $name $mail"
else
  echo "*** no match for $GIT_COMMITTER_NAME" 
fi

' -- --all

Reply via email to