What is the format of an authors file for git svn, specifically for special characters like backslash or underscore?
Solution 1
I hate to be "that guy", but I just gave it a try and it worked fine for me. Here's the copy of the authors file I used:
RNO\_MCLWEB = Ronald McDonald <[email protected]>
SND\krobertson_cp = Some Guy <[email protected]>
I did, however, use a slightly different method than you did to generate author names, following these directions. My specific incantation was:
$ svn log --xml | grep author | sort -u | perl -pe 's/.>(.?)<./$1 = /'
I'm also using Git 1.6.6.1 (doubt that makes a difference, but you never know).
I did notice that when I used your pipeline to get the SVN authors, there were spaces in front of their SVN usernames in the resulting file (i.e., there was a space in column 1 on each line). Don't know if that makes a difference or not.
Solution 2
I had same problem, but with user apache. In authors file a had line like this.
apache = Apache
or
apache = Apache <>
But when I set it to
apache = Apache <[email protected]>
My repo started cloned normaly. Please be sure that you set all you authors names and email correctly, with follow format
svn_user_name = JustNameInGit <[email protected]>
Every field is obligatory!!!
Solution 3
I used the following which helps skip messages with words like 'authorization' in them
svn log --xml | grep /author | sort -u | perl -pe 's/.>(.?)<./$1 = /' > users.txt
Solution 4
I had this issue, it turned out to be the file encoding in my example. Make sure the text file is saved at UTF-8
You can do this in any good text edit (eg notepad++ Encoding menu)
anonym0us
Updated on July 20, 2022Comments
-
anonym0us almost 2 years
I am trying to clone Papercut, an smtp server emulator
I'm getting the list of SVN authors with
svn log -q https://papercut.svn.codeplex.com/svn | grep -e '^r'| awk 'BEGIN {FS="|"};{print $2}'|sort|uniq
which is giving meRNO\_MCLWEB SND\krobertson_cp
I created an authors.txt with the
SVN_User = UserName <Email>
format, but when I rungit svn clone --no-metadata -A authors.txt https://papercut.svn.codeplex.com/svn papercut
it complains "Author: RNO\_MCLWEB not defined in authors.txt file"
I've tried with putting a \ before the '\' and '_' to try to escape them, and adding quotes around the name, but neither worked.
I can't find any better description of the authors.txt file format than
SVN_User = UserName <Email>
-
anonym0us about 14 yearsThe first time I made the authors.txt, I didn't put a string like [email protected] for the email, just <MCLWEB> I guess that was the problem, since an authors.txt with the text you showed did clone without a problem (git 1.6.5.1). I thought I had tried with proper email addresses, but apparently not. Anyway, thanks.
-
eykanal over 11 yearsSee this question for a similar discussion.
-
CoffeeMonster almost 11 yearsRegex is incorrect - it needs to match more than 1 char. Fixed:
's/.*>(.*?)<.*/$1 = /'
-
vmrob almost 10 yearsNoting that every field is obligatory helped me. The link from eykanal implies that it isn't which seems to be true in the case he linked, not during an SVN import.
-
oryan_dunn over 4 yearsThis solved it for me as well. The file was originally generated by the atlassian svn migration script from within powershell on windows 10, and it was UTF-16. I saved as UTF-8 and it worked.