Reputation: 125
I've cloned a large SVN repository with many branches and tags. "git svn fetch" is stalling when it hits a certain commit where someone goofed and copied the root of the repository to a new tag instead of copying trunk. So the tag itself contains trunk, tags, and branches.
I tried simply excluding paths under such tags via "ignore-paths", and I can tell that this filter is working because when "fetch" reaches the problem revision, instead of spewing every file (in every branch and tag) that it's following, it just sits there for hours.
tcpdump shows lots of data coming from the server. du shows the .git folder staying exactly the same size.
Maybe I need to bypass this revision (and others like it) more aggressively? How? I'd prefer not to resort to --no-follow-parent. Thanks.
Upvotes: 2
Views: 675
Reputation: 125
As far as I can tell without actually debugging the Perl code of git-svn (not knowing Perl), it looks like it can't handle cases where the root of the repository was carelessly copied to a branch or tag. I worked around the initial hang by omitting tags in the import -- all of the copies of root were under tags. But I hit another hang today trying to convert, separately, a user directory that also had a copy from the root of the repository.
Upvotes: 2