From: Knut Eldhuset <knut@3d-radar.com>
To: "git@vger.kernel.org >> Git Mailing List" <git@vger.kernel.org>
Cc: Michael J Gruber <git@drmicha.warpmail.net>
Subject: Re: Different svn-id URLs in history
Date: Fri, 10 Oct 2008 10:56:32 +0200 [thread overview]
Message-ID: <48EF18C0.3050200@3d-radar.com> (raw)
In-Reply-To: <48EE132E.1040407@drmicha.warpmail.net>
Michael J Gruber wrote:
> Knut Eldhuset venit, vidit, dixit 08.10.2008 11:20:
>> Michael J Gruber wrote:
>>> Knut Eldhuset venit, vidit, dixit 08.10.2008 08:34:
<snip>
>>> 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
>
> That may be the source of the trouble. In fact, the log below indicates
> that it is more like the following two paths:
>
> https://server/trunk/project/old_source
> https://server/trunk/project/src/client
>
I think my description is correct, but these particular log messages may
not be the best examples. We did have files and folders in "old_source"
that moved to "src".
>> 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
>>
>
> That one is funny. A modified directory but no paths modified
> underneath. Was this a propset?
>
These give identical output:
svn log -v -r4868 --xml https://server
and
svn log -v -r4868 --with-all-revprops --xml https://server
I don't understand what happened there. It was a commit made with svk,
so maybe that had something to do with it.
>> ------------------------------------------------------------------------
>>
>> $ 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
>> ------------------------------------------------------------------------
>
> Maybe you're trying too hard to disguise things. Are you really adding
> some_file right under project here and under project/src/client in r4871?
>
No, those were different files... I'm sorry I can't share the repo publicly.
>> 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.
>>
>>> - your incarnation of git-svn
>>>
>> # git --version
>> git version 1.6.0.2
>
> I actually meant incantation, I guess I should brush up on my little
> latin, uhm ;)
>
> So, did you use something like
>
> git svn init -s https://server/
>
> or
>
> git svn init -T trunk/project/src/client -t 'tags/*/project/src/client'
> -b 'branches/*/project/src/client' https://server/
>
I used
git svn clone -s https://server/
initially. Then I tried
git svn clone -T trunk/project/src -r tags -b branches https://server/
which gave better results. Then I settled on using "-r4869:HEAD".
> My suggestion would to use two svn sections (option "-R") with different
> configs for different repo structures, and to fetch the first one with
> "-r1:4866" and the second one with "-r4871:HEAD". Reorganising the svn
> repo layout can confuse git-svn quite a bit (and understandably so).
> Using different configs for different "epochs" helps. grafts are your
> friend when it comes to connecting the two.
>
> Michael
Good suggestion. I didn't realize one could do it that way.
Regards,
Knut
next prev parent reply other threads:[~2008-10-10 8:57 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-07 10:58 Different svn-id URLs in history Knut Eldhuset
2008-10-07 15:01 ` Michael J Gruber
2008-10-08 6:34 ` Knut Eldhuset
2008-10-08 8:32 ` Michael J Gruber
2008-10-08 9:20 ` Knut Eldhuset
2008-10-08 9:23 ` Knut Eldhuset
2008-10-09 14:20 ` Michael J Gruber
2008-10-10 8:56 ` Knut Eldhuset [this message]
2008-10-09 6:16 ` Knut Eldhuset
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48EF18C0.3050200@3d-radar.com \
--to=knut@3d-radar.com \
--cc=git@drmicha.warpmail.net \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.