Subsystem commit subjects should be prefixed with the approriate subsystem (e.g. "git-svn: Teach dcommit --mergeinfo ..." Bryan Jacobs <bjacobs@xxxxxxxx> wrote: > "svn dcommit --mergeinfo" replaces the svn:mergeinfo property in an > upstream SVN repository with the given text. The svn:mergeinfo > property may contain commits originating on multiple branches, > separated by newlines. > > Cause space characters in the mergeinfo to be replaced by newlines, > allowing a user to create history representing multiple branches being > merged into one. > > Update the corresponding documentation and add a test for the new > functionality. > > Signed-off-by: Bryan Jacobs <bjacobs@xxxxxxxx> This looks reasonable, Cc:-ing Sam since he handled the mergeinfo stuff. After all this time, I still have no experience using SVN mergeinfo anywhere :x > --- > Documentation/git-svn.txt | 5 +++-- > git-svn.perl | 3 +++ > t/t9158-git-svn-mergeinfo.sh | 13 +++++++++++++ > 3 files changed, 19 insertions(+), 2 deletions(-) > > diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt > index ed5eca1..3ed28df 100644 > --- a/Documentation/git-svn.txt > +++ b/Documentation/git-svn.txt > @@ -211,8 +211,9 @@ discouraged. > Add the given merge information during the dcommit > (e.g. `--mergeinfo="/branches/foo:1-10"`). All svn server versions can > store this information (as a property), and svn clients starting from > - version 1.5 can make use of it. 'git svn' currently does not use it > - and does not set it automatically. > + version 1.5 can make use of it. To specify merge information from multiple > + branches, use a single space character between the branches > + (`--mergeinfo="/branches/foo:1-10 /branches/bar:3,5-6,8"`) > > 'branch':: > Create a branch in the SVN repository. > diff --git a/git-svn.perl b/git-svn.perl > index 89f83fd..3ee26a2 100755 > --- a/git-svn.perl > +++ b/git-svn.perl > @@ -548,6 +548,9 @@ sub cmd_dcommit { > } > my $expect_url = $url; > Git::SVN::remove_username($expect_url); > + if (defined($_merge_info)) { > + $_merge_info =~ tr{ }{\n}; > + } > while (1) { > my $d = shift @$linear_refs or last; > unless (defined $last_rev) { > diff --git a/t/t9158-git-svn-mergeinfo.sh b/t/t9158-git-svn-mergeinfo.sh > index 3ab4390..8c9539e 100755 > --- a/t/t9158-git-svn-mergeinfo.sh > +++ b/t/t9158-git-svn-mergeinfo.sh > @@ -38,4 +38,17 @@ test_expect_success 'verify svn:mergeinfo' ' > test "$mergeinfo" = "/branches/foo:1-10" > ' > > +test_expect_success 'change svn:mergeinfo multiline' ' > + touch baz && > + git add baz && > + git commit -m "baz" && > + git svn dcommit --mergeinfo="/branches/bar:1-10 /branches/other:3-5,8,10-11" > +' > + > +test_expect_success 'verify svn:mergeinfo multiline' ' > + mergeinfo=$(svn_cmd propget svn:mergeinfo "$svnrepo"/trunk) > + test "$mergeinfo" = "/branches/bar:1-10 > +/branches/other:3-5,8,10-11" > +' > + > test_done > -- > 1.7.6 -- 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