Subject: git clone svn: authors from authors file are ignored, authors-prog works, but crashes on branch points

From: Till Schäfer <[email-masked]>
Date: Wed, 26 Aug 2015 21:57:10 +0200

Hi,
i am observing some weired "git svn clone" behavior during my try to migrate the Scaffold Hunter [1] SVN repository [2] to Git: 

if i just use the command 

$ git svn clone svn://svn.code.sf.net/p/scaffoldhunter/code --no-metadata -s code

everything went smoothly. Now i wanted to replace the authors SVN-logins by useful names and created a mapping file with the following content: 

anjenson = Andrew Zhilka <>
bernhard.dick = Bernhard Dick <>
dominic.sacre = Dominic Sacré <>
doxmoxbox = doxmoxbox <>
falkn = Falk Nette <>
henning.garus = Henning Garus <>
kakl = Karsten Klein <>
klein = Karsten Klein <>
lappie00 = Jeroen Lappenschaar <>
michael.hesse = Michael Hesse <>
nlskrg = Nils Kriege <[email-masked]>
philipp.kopp = Philipp Kopp <>
philipp.lewe = Philipp Lewe <>
schrins = Sven Schrinner <>
shamshadnpti = Shamshad Alam <>
srenner7 = Steffen Renner <>
sturm89 = Werner Sturm <>
thomas.schmitz = Thomas Schmitz <>
thorsten.fluegel = Thorsten Flügel <>
till.schaefer = Till Schäfer <[email-masked]>
tillschaefer = Till Schäfer <[email-masked]>

I executed:

$ git svn clone svn://svn.code.sf.net/p/scaffoldhunter/code --authors-file=/home/till/temp/code-authors-transform.txt --no-metadata -s code

and got the error message "Author: klein not defined in /home/till/temp/code-authors-transform.txt file". 
I tried a workaround by using a python script to return the entries i have already defined in the authors file: 

$ git svn clone svn://svn.code.sf.net/p/scaffoldhunter/code --authors-file=/home/till/temp/code-authors-transform.txt --authors-prog=/home/till/temp/authors.py --no-metadata -s code

The import process now went over the "klein" commit. The weired thing is, that a few SVN usernames seem to be recognized in the authors file and a few are passed to my script (I logged the output). However, at the first revision, where a tag was added in the SVN repo the cloning process crashed with the error message: 

Found possible branch point: svn://svn.code.sf.net/p/scaffoldhunter/code/trunk => svn://svn.code.sf.net/p/scaffoldhunter/code/branches/subsearch, 17
Use of uninitialized value $u in substitution (s///) at /usr/lib64/perl5/vendor_perl/5.20.2/Git/SVN.pm line 101.
Use of uninitialized value $u in concatenation (.) or string at /usr/lib64/perl5/vendor_perl/5.20.2/Git/SVN.pm line 101.
refs/remotes/origin/trunk: 'svn://svn.code.sf.net/p/scaffoldhunter/code' not found in ''

One problem I am seeing in the SVN repo is, that between the revisions 97 and 102 the trunk folder was absent. the old one was moved to some subfolder and a new one was created. Therefore, I started the cloning beginning with rev 102 using the command line option "-r102:HEAD". However, the same error occurred for some later tag (the first tag after rev 102). 

Found possible branch point: svn://svn.code.sf.net/p/scaffoldhunter/code/trunk => svn://svn.code.sf.net/p/scaffoldhunter/code/tags/release-2.0, 1565
Use of uninitialized value $u in substitution (s///) at /usr/lib64/perl5/vendor_perl/5.20.2/Git/SVN.pm line 101.
Use of uninitialized value $u in concatenation (.) or string at /usr/lib64/perl5/vendor_perl/5.20.2/Git/SVN.pm line 101.
refs/remotes/origin/trunk: 'svn://svn.code.sf.net/p/scaffoldhunter/code' not found in ''

I would be very glad if someone has a hint about what is going wrong here. Is this a bug in git or is something wrong with the SVN repo?

used software versions: 
- git 2.5.0 
- subversion 1.8.14

Regards,
Till

[1] http://scaffoldhunter.sourceforge.net/
[2] https://svn.code.sf.net/p/scaffoldhunter/code/trunk

-- 
Dipl.-Inf. Till Schäfer
TU Dortmund University
Chair 11 - Algorithm Engineering
Otto-Hahn-Str. 14 / Room 237
44227 Dortmund, Germany

e-mail: [email-masked]
phone: +49(231)755-7706
fax: +49(231)755-7740
web: http://ls11-www.cs.uni-dortmund.de/staff/schaefer
pgp: https://keyserver2.pgp.com/vkd/SubmitSearch.event?&&SearchCriteria=0xD84DED79