On Fri, Sep 15, 2017 at 5:53 PM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: > Jason Merrill wrote: >> On Fri, Sep 15, 2017 at 1:52 PM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: >> > Jason Merrill wrote: > >>>> Subject: Fix merge parent checking with svn.pushmergeinfo. >>>> >>>> Without this fix, svn dcommit of a merge with svn.pushmergeinfo set would >>>> get error messages like "merge parent <X> for <Y> is on branch >>>> svn+ssh://gcc.gnu.org/svn/gcc/trunk, which is not under the git-svn root >>>> svn+ssh://jason@xxxxxxxxxxx/svn/gcc!" >>>> >>>> * git-svn.perl: Remove username from rooturl before comparing to branchurl. >>>> >>>> Signed-off-by: Jason Merrill <jason@xxxxxxxxxx> >>> >>> Interesting. Thanks for writing it. >> >> Thanks for the review. >> >>> Could there be a test for this to make sure this doesn't regress in >>> the future? See t/t9151-svn-mergeinfo.sh for some examples. >> >> Hmm, I'm afraid figuring out how to write such a test would take >> longer than I can really spare for this issue. There don't seem to be >> any svn+ssh tests currently. > > Well, could you give manual commands to allow me to reproduce the > problem? > > Then I'll translate them into a test. :) Something like this: git svn clone -s svn+ssh://user@host/repo git config svn.pushmergeinfo yes git checkout -b branch origin/branch git merge origin/trunk git svn dcommit Thanks! > FWIW remove_username seems to be able to cope fine with an http:// > URL. t/lib-httpd.sh starts an http server with Subversion enabled, > as long as the envvar GIT_SVN_TEST_HTTPD is set to true. Its address > is $svnrepo, which is an http URL (but I don't see a username in the > URL). Does that help? I think the http transport handles the username separately, not in the URL. I would expect that a dummy ssh wrapper like some of the tests use would be sufficient, no need for an actual network connection. > Alternatively, does using rewrite-root as in t9151-svn-mergeinfo.sh > help? Hmm, I'm not sure how rewriteRoot would interact with this issue, whether it would be useful as a workaround or another problematic case. Jason