Ramkumar Ramachandra wrote: > Joe Corneli writes: >>> I think the state of the art is currently git2svn >> >> Thanks, that did indeed work, though, for the record it uses committer >> name and email in the log that it generates, not author name and >> email, but no worries! > > That should be easy enough to fix with something like this (warning: > untested). A more elegant solution would actually use some sort of > user-configurable mapping from Git authors/ committers to SVN authors > though. Thanks for the cc. (cc-ing lha, as I should have before.) I suppose if svn will show only one of the two (committer and author) then it is better to show the author. Possible complications: . The author lines in fast-import streams are optional. . Existing users of the incremental import facility might not want the meaning of svn:author to change between imports. _If_ that is a problem then a command-line option to switch behaviors might help. . Is svn okay with non-monotonic dates? (If not, then the committer date would need to be used.) Modulo those complications I like the idea. (Though I haven't read the implementation, which follows for reference.) > > Signed-off-by: Ramkumar Ramachandra <artagnon@xxxxxxxxx> > --8<-- > diff --git a/git2svn b/git2svn > index 2380775..3856696 100755 > --- a/git2svn > +++ b/git2svn > @@ -261,12 +261,8 @@ COMMAND: while (!eof(IN)) { > $commit{Mark} = $1; > $next = next_line($IN); > } > - if ($next =~ m/author +(.*)/) { > - $commit{Author} = $1; > - $next = next_line($IN); > - } > - unless ($next =~ m/committer +(.+) +<([^>]+)> +(\d+) +[+-](\d+)$/) { > - die "missing comitter: $_"; > + unless ($next =~ m/author +(.+) +<([^>]+)> +(\d+) +[+-](\d+)$/) { > + die "missing author: $_"; > } > > $commit{CommitterName} = $1; > @@ -275,6 +271,9 @@ COMMAND: while (!eof(IN)) { > $commit{CommitterTZ} = $4; > > $next = next_line($IN); > + if ($next =~ m/committer +(.*)/) { > + $next = next_line($IN); > + } > my $log = read_data($IN, $next); > > $next = next_line($IN); -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html