git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git-svn of both trunk and tags while having no access to the 'parent' of those

From
Michael J Gruber <git@drmicha.warpmail.net>
Date
Nov 18, 2009, 15:07 UTC
Message-ID
<4B040D95.9040901@drmicha.warpmail.net>
In-Reply-To
<20091118142332.GC17964@onerussian.com>
Yaroslav Halchenko venit, vidit, dixit 18.11.2009 15:23:
Show 28 quoted lines
> 
> On Wed, 18 Nov 2009, Michael J Gruber wrote:
>>> git svn clone --no-minimize-url --prefix=upstream-svn/ -T trunk -t releases  http://domain.com/svnrepo/trunk svnrepo.gitsvn
>> Is the trunk really at svnrepo/trunk/trunk?
> nope... it is just svnrepo/trunk but if I set url to point to parent --
> git svn seeks authentication right away
> 
>> I would try both
>> git svn clone --no-minimize-url --prefix=upstream-svn/ -T trunk -t
>> releases  http://domain.com/svnrepo/ svnrepo.gitsvn
> 
> asks for authentication since there is no public access to
> http://domain.com/svnrepo/
> 
>> and also the seemingly equivalent
> 
>> git svn clone --no-minimize-url --prefix=upstream-svn/ -T
>> http://domain.com/svnrepo/trunk -t http://domain.com/svnrepo/releases
>> svnrepo.gitsvn
> seems to not work since it wants url as a parameter 
> 
> Bad URL passed to RA layer: Illegal repository URL svnrepo.gitsvn  at /usr/lib/git-core/git-svn line 940
> 
>> Also, I assume you can svn list http://domain.com/svnrepo/trunk and
>> http://domain.com/svnrepo/releases ;)
> yeap -- I can list both of those but not their parent.
> 
> 

OK, so the way it's implemented --no-minimize-url might be half as useful as it could be. One last try (before asking Eric...) would be

git svn clone --no-minimize-url --prefix=upstream-svn/ -T http://domain.com/svnrepo/trunk -t http://domain.com/svnrepo/releases http://domain.com/svnrepo/trunk svnrepo.gitsvn

because that involves accessible URLs only and trunk and branch URLs are absolute.

[Meanwhile I git the actual URL PMed by Yaroslov.]

So, what happens with the above is that git-svn tries to set the URL config again from the URL part of an absolute tags argument. I don't know how absolute URLs (which are documented) for tags etc. could possibly work if git-svn tries to do that. Eric?

I tried also with two svn sections to circumvent this:
[svn-remote "svn"]
        url = http://domain.com:/project/trunk
        fetch = :refs/remotes/trunk
[svn-remote "svnr"]
        url = http://domain.com:/project/releases
        tags = /*:refs/remotes/tags/*

Fetching -Rsvn works fine, but fetching -Rsvnr gives the same authentication problems. And fetch does not accept --no-minimize-url as an option. OTOH: If the option is not used it seems to me (from the source) that not minimizing is the default, which leaves me really stomped. Eric?? ;)

Michael
Previous: Yaroslav HalchenkoNext: Eric Wong
Message 6 of 9 in “git-svn of both trunk and tags while having no access to the 'parent' of those”
  1. Yaroslav HalchenkoNov 17, 2009
  2. Michael J GruberNov 18, 2009
  3. Yaroslav HalchenkoNov 18, 2009
  4. Michael J GruberNov 18, 2009
  5. Yaroslav HalchenkoNov 18, 2009
  6. Michael J GruberNov 18, 2009
  7. Eric WongNov 19, 2009
  8. Eric WongNov 20, 2009
  9. git svn: always reuse existing remotes on fetchEric Wong, Nov 22, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.