Re: Different svn-id URLs in history
- From
- Knut Eldhuset <knut@3d-radar.com>
- Date
- Oct 10, 2008, 08:56 UTC
- Message-ID
- <48EF18C0.3050200@3d-radar.com>
- 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>
Show 20 quoted lines
>>> 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".
Show 38 quoted lines
>> 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.
Show 15 quoted lines
>> ------------------------------------------------------------------------ >> >> $ 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.
Show 20 quoted lines
>> 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".
Show 8 quoted lines
> 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