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.
- your incarnation of git-svn
# git --version
git version 1.6.0.2
Regards,
Knut
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html