"Kyle J. McKay" <mackyle@xxxxxxxxx> writes: > Alternatively this change can be made in git-svn.perl: > |diff --git a/git-svn.perl b/git-svn.perl > |index 7349ffea..284f458a 100755 > |--- a/git-svn.perl > |+++ b/git-svn.perl > |@@ -149,7 +149,7 @@ my ($_trunk, @_tags, @_branches, $_stdlayout); > my %icv; > my %init_opts = ( 'template=s' => \$_template, 'shared:s' => \$_shared, > 'trunk|T=s' => \$_trunk, 'tags|t=s@' => \@_tags, > - 'branches|b=s@' => \@_branches, 'prefix=s' => \$_prefix, > + 'branches|b=s@' => \@_branches, 'prefix:s' => \$_prefix, > 'stdlayout|s' => \$_stdlayout, > 'minimize-url|m!' => \$Git::SVN::_minimize_url, > 'no-metadata' => sub { $icv{noMetadata} = 1 }, > > Which makes the argument to --prefix optional (in which case it is set > to ""). We do want to learn what prefix the user wants to use when they start their command line with "git svn --prefix". Stopping the command line right there and expecting it to default to whatever built-in prefix is simply strange; the user could have omitted that "--prefix" that lacks the argument. If the user did want us to use the default by passing an empty string as its argument, both forms, i.e. "--prefix ''" and "--prefix=''", ought to be usable, but if older Getopt::Long() does not allow the latter form, at least the former is the right way for the user to tell us that. So I think your fix (workaround for a bug in older Getopt::Long) in the patch is the right one. Johan may want to help me by pointing out if I am missing something. Thanks. > I'm not really sure what the best thing to do here is. I thought the > documentation talked somewhere about using --prefix="" (or just --prefix=) > to get the old behavior, but now I can't find that. In that > case I think probably just changing the tests to use --prefix "" > instead of --prefix="" should take care of it especially since the log > message for fe191fca (which actually changes the default) talks about > using --prefix "" and not --prefix="". I have attached a patch below > (against master) to make that change to the two affected subtests of t9117. > > --Kyle > > ---- >8 ---- > Subject: [PATCH] t9117: use --prefix "" instead of --prefix="" > > Versions of Perl's Getopt::Long module before 2.37 do not contain > this fix that first appeared in Getopt::Long version 2.37: > > * Bugfix: With gnu_compat, --foo= will no longer trigger "Option > requires an argument" but return the empty string. > > Instead of using --prefix="" use --prefix "" when testing an > explictly empty prefix string in order to work with older versions > of Perl's Getopt::Long module. > > Signed-off-by: Kyle J. McKay <mackyle@xxxxxxxxx> > --- > t/t9117-git-svn-init-clone.sh | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/t/t9117-git-svn-init-clone.sh b/t/t9117-git-svn-init-clone.sh > index dfed76fe..a66f43c6 100755 > --- a/t/t9117-git-svn-init-clone.sh > +++ b/t/t9117-git-svn-init-clone.sh > @@ -101,18 +101,18 @@ test_expect_success 'clone with -s/-T/-b/-t assumes --prefix=origin/' ' > rm -f warning > ' > > -test_expect_success 'init with -s/-T/-b/-t and --prefix="" still works' ' > +test_expect_success 'init with -s/-T/-b/-t and --prefix "" still works' ' > test ! -d project && > - git svn init -s "$svnrepo"/project project --prefix="" 2>warning && > + git svn init -s "$svnrepo"/project project --prefix "" 2>warning && > test_must_fail grep -q prefix warning && > test_svn_configured_prefix "" && > rm -rf project && > rm -f warning > ' > > -test_expect_success 'clone with -s/-T/-b/-t and --prefix="" still works' ' > +test_expect_success 'clone with -s/-T/-b/-t and --prefix "" still works' ' > test ! -d project && > - git svn clone -s "$svnrepo"/project --prefix="" 2>warning && > + git svn clone -s "$svnrepo"/project --prefix "" 2>warning && > test_must_fail grep -q prefix warning && > test_svn_configured_prefix "" && > rm -rf project && -- 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