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

Re: Different svn-id URLs in history

From
KEKnut Eldhuset <knut@3d-radar.com>
Date
Oct 8, 2008, 09:23 UTC
Message-ID
<48EC7BF8.9010707@3d-radar.com>
In-Reply-To
<48EC7B52.4000100@3d-radar.com>
Knut Eldhuset wrote:
Show 123 quoted lines
> Michael J Gruber wrote:
>> Knut Eldhuset venit, vidit, dixit 08.10.2008 08:34:
>>> Michael J Gruber wrote:
>>>> Knut Eldhuset venit, vidit, dixit 07.10.2008 12:58:
>>>>> Hi,
>>>>>
>>>>> After cloning my svn repository, I notice that the svn-id URL is 
>>>>> different when going back in history:
>>>>>
>>>>> git-svn-id: https://server/trunk@300
>>>>>
>>>>> vs
>>>>>
>>>>> git-svn-id: https://server/trunk/some_folder/project/src@250
>>>>>
>>>> I take this is as an invitation for guesswork (given the amount of
>>>> details)...
>>> Sorry about that... I'm confused.
>>>> You probably have commits which don't follow your usual svn repo layout
>>>> (trunk/some_folder/project/src) but commit to trunk/ directly. The 
>>>> output of
>>>>
>>>> svn log -v -r300 https://server/trunk@300
>>>> svn log -v -r250 https://server/trunk/some_folder/project/src@250
>>>>
>>>> should give some clues.
>>>>
>>> Svn log shows that the same path has been modified in both cases. I see 
>>
>> Does "same path" mean:
>> - same relative to the above paths or
>> - same absolute path?
> 
> Both say "/trunk/some_folder/project/src/some_file".
> 
>>
>>> something strange in git, though. Our svn repository has about 6500 
>>> commits, but git shows over 10.000. Further investigation shows that 
>>> a lot of svn commits have two entries in git. Some branches off of 
>>> trunk do not start at r1, but off of a duplicate rNNNN. Could this be 
>>> due to our unhealthy practice of creating branches off of subtrees in 
>>> svn? By this I mean create a branch off of 
>>> https://server/trunk/some_folder/project/src instead of 
>>> https://server/trunk. If so, what can be done to fix this?
>>>
>>> As a sidenote, during git svn clone, I noticed that each time a new 
>>> branch or tag was discovered, the "scanning" started back at r1. Is 
>>> this normal? I would think the history before the branch was already 
>>> imported. Of course, this could maybe be due to the bad branching 
>>> practice described above.
>>
>> svn is typically "abused" in the sense that one svn repo is used for
>> separate projects (your subtrees). git-svn can deal with non-standard
>> repo layouts.
>>
>> I assume you can't share the svn repo publically, can you?
> 
> Sorry, no.
> 
>> So, in order to help you, we would need to know
>>
>> - the layout of your svn repo: where are trunk, branches and tags, how
>> did you create branches and tags in svn, are "projects" entirely separate
> 
> https://server/trunk
> https://server/branches
> https://server/tags
> 
> We really only have one "project" source tree at 
> https://server/trunk/some_folder/project/src
> 
> However, once the sources were at
> https://server/trunk/some_folder/project/old_source
> 
> Therefore we have the following:
> 
> $ svn log -v -r4871 https://server/
> ------------------------------------------------------------------------
> r4871 | nn | 2007-09-25 13:36:25 +0200 (Tue, 25 Sep 2007) | 3 lines
> Changed paths:
>    M /trunk/project
>    D /trunk/project/old_source/some_file
>    A /trunk/project/src/client/some_file (from 
> /trunk/project/old_source/some_file:4795)
> 
>  commit-message
> ------------------------------------------------------------------------
> 
> $ svn log -v -r4869 https://server/
> ------------------------------------------------------------------------
> r4869 | nn | 2007-09-25 13:14:34 +0200 (Tue, 25 Sep 2007) | 3 lines
> Changed paths:
>    M /trunk/project
>    A /trunk/project/src
>    A /trunk/project/src/client
> 
>  commit-message
> 
> ------------------------------------------------------------------------
> 
> $ svn log -v -r4868 https://server/
> ------------------------------------------------------------------------
> r4868 | nn | 2007-09-25 13:14:28 +0200 (Tue, 25 Sep 2007) | 3 lines
> Changed paths:
>    M /trunk/project
> 
>  commit-message
> 
> ------------------------------------------------------------------------
> 
> $ svn log -v -r4867 https://server/
> ------------------------------------------------------------------------
> r4867 | nn | 2007-09-25 12:04:58 +0200 (Tue, 25 Sep 2007) | 3 lines
> Changed paths:
>    M /trunk/project
>    A /trunk/project/some_file
> 
>  commit-message
> ------------------------------------------------------------------------
> 
> r4868 appears twice in git. One commit is on master/trunk and has parent 
> and child, while the other is on a branch and has no parent.
> 
Sorry, that should be r4869.
Show 7 quoted lines
>> - your incarnation of git-svn
>>
> 
> # git --version
> git version 1.6.0.2
> 
> 

Regards, Knut

Previous: Knut EldhusetNext: Michael J Gruber
Message 6 of 9 in “Different svn-id URLs in history”
  1. Knut EldhusetOct 7, 2008
  2. Michael J GruberOct 7, 2008
  3. Knut EldhusetOct 8, 2008
  4. Michael J GruberOct 8, 2008
  5. Knut EldhusetOct 8, 2008
  6. Knut EldhusetOct 8, 2008
  7. Michael J GruberOct 9, 2008
  8. Knut EldhusetOct 10, 2008
  9. Knut EldhusetOct 9, 2008

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.