From abfa533dea28763040beba3e3d908bbbcf818b3a Mon Sep 17 00:00:00 2001 From: "Stephen R. van den Berg" Date: Tue, 29 Apr 2008 23:20:32 +0200 Subject: [PATCH] git-svn: Same default as cvsimport when using --use-log-author When using git-cvsimport, the author is inferred from the cvs commit, e.g. cvs commit logname is foobaruser, then the author field in git results in: Author: foobaruser Which is not perfect, but perfectly acceptable given the circumstances. The default git-svn import however, results in: Author: foobaruser When using mixes of imports, from CVS and SVN into the same git repository, you'd like to harmonise the imports to the format cvsimport uses. git-svn supports an experimental option --use-log-author which currently results in the same logentry as without that option when no From: or Signed-off-by: is found in the logentry ($email currently ends up empty, and hence is generated again). This patches harmonises the result with cvsimport, and makes git-svn --use-log-author produce: Author: foobaruser Signed-off-by: Stephen R. van den Berg Acked-by: Eric Wong Signed-off-by: Junio C Hamano --- git-svn.perl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/git-svn.perl b/git-svn.perl index 711e7b7eb9..b70f8efaaa 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -2428,13 +2428,15 @@ sub make_log_entry { $name_field = $1; } if (!defined $name_field) { - # + if (!defined $email) { + $email = $name; + } } elsif ($name_field =~ /(.*?)\s+<(.*)>/) { ($name, $email) = ($1, $2); } elsif ($name_field =~ /(.*)@/) { ($name, $email) = ($1, $name_field); } else { - ($name, $email) = ($name_field, 'unknown'); + ($name, $email) = ($name_field, $name_field); } } if (defined $headrev && $self->use_svm_props) { -- GitLab