Opened 12 years ago
Closed 8 years ago
#10781 closed defect (fixed)
Error when cloning SVN repository using Mercurial or Git with their respective SVN connectors
Reported by: | Ryan J Ollos | Owned by: | Michael Renzmann |
---|---|---|---|
Priority: | normal | Component: | TracHacks |
Severity: | normal | Keywords: | repository |
Cc: | Steffen Hoffmann, osimons, Olemis Lang | Trac Release: |
Description
I’ve tried cloning the trac-hacks repository several times with Mercurial. I’m using hgsubversion. Each time it fails at r321:
[r629] pacopablo: TracBlogPlugin: [r630] Team5: PeerReviewPlugin: [r631] Team5: PeerReviewPlugin: abort: ("REPORT of 'http://trac-hacks.org/svn': Could not read chunk size: connection was closed by server (http://trac-hacks.org)", 175002)
I've seen similar issues with trying to clone the repository with Git, but I haven't documented the issue yet.
Attachments (1)
Change History (10)
comment:1 follow-up: 3 Changed 12 years ago by
Keywords: | repository added |
---|
comment:2 follow-up: 7 Changed 12 years ago by
Thanks for the pointers on Hg! I haven't used Hg much, but hope to start working with it more.
I did some googling around and found that solution to cloning with Git was to use https
in the URL rather than http
. I think it took just around two hours to clone the whole repository.
comment:3 follow-up: 5 Changed 12 years ago by
Replying to hasienda:
As you remember I shared my Mercurial copy of trac-hacks.org's SVN repo, when it was down for some weeks last year.
this is a public fork https://bitbucket.org/olemis/bloodhound-t-h.o
I had issues retrieving the full repo too.
Always like that for big repositories .
Hgsvn was my first try, and I succeeded only after days of try-n-error.
I've experienced many issues with hgsvn in the past (mostly related to following deleted files)
With hgsubversion, that I continued to use until now, it was only a matter of some hours.
highly recommended .
Q:
- @hasienda: the fork you shared @ bitbucket was the hgsvn or hgsubversion mirror ?
in case of being the later , could u please share the svn to hg mapping files ? ... so as to be able to do things like
$ hg log --template="[{svnrev}] - {desc}\n"
Both Hg extensions bailed out at seemingly random times. I could not reproduce specific revisions. Both extensions where able to resume, but I had to clean-up at least 5-8 times to get through with hgsubversion. From hgsvn I do not remember, but the error-resume cycles must have been 3 times as high, if not more, and the resulting hybrid repo clone grew to at least twice the size of the hgsubversion clone, so I'd never dare to attempt it again that way.
+1
[...]
comment:4 Changed 12 years ago by
Cc: | Olemis Lang added |
---|
comment:5 follow-up: 6 Changed 12 years ago by
Replying to olemis:
Q:
- @hasienda: the fork you shared @ bitbucket was the hgsvn or hgsubversion mirror ?
What I'm still working with hgsubversion.
in case of being the later , could u please share the svn to hg mapping files ?
Sure, attached here. Or did you look for something else?
Changed 12 years ago by
Attachment: | rev_map.bz2 added |
---|
SVN to Hg revision map file trunkated to r11924
comment:6 Changed 12 years ago by
Replying to hasienda:
Replying to olemis:
Q:
- @hasienda: the fork you shared @ bitbucket was the hgsvn or hgsubversion mirror ?
What I'm still working with hgsubversion.
in case of being the later , could u please share the svn to hg mapping files ?
Sure, attached here. Or did you look for something else?
Thanks . It seems this is it . However I wonder whether hgsubversion will support propagating revision mapping file(s) onto forks and clones ...
comment:7 Changed 12 years ago by
Replying to rjollos:
I did some googling around and found that solution to cloning with Git was to use
https
in the URL rather thanhttp
. I think it took just around two hours to clone the whole repository.
I should note that I encountered a few errors while cloning. IIRC, I kicked it off again with git svn fetch
.
Another approach that has worked for me, is to init a Git repository, edit .git/config
to add
[svn-remote "svn"] url = https://trac-hacks.org/svn fetch = :refs/remotes/git-svn
and then execute git svn fetch
. When doing that just now, I was able to fetch all of the revisions in an hour or two, with the fetch halting on an error just once (1). I'm the farthest thing from an expert on Git, but I think those two approaches are effectively the same.
I'm leaving this ticket open with the idea that we might want to summarize some of these things in an FAQ page on t-h.o.
(1) The error was:
r7009 = 9bfdc3c0d681256956b3d94a8fe0da31b17903a4 (refs/remotes/git-svn) RA layer request failed: Server sent unexpected return value (408 Request Time-out) in response to REPORT request for '/svn/!svn/vcc/default' at /usr/lib/git-core/git-svn line 5653
comment:8 Changed 12 years ago by
Summary: | Error when cloning SVN repository using Mercurial or Git → Error when cloning SVN repository using Mercurial or Git with their respective SVN connectors |
---|
comment:9 Changed 8 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Closing this since we have resolution. Eventually I hope to setup host-side repository mirroring between Git and SVN using SubGit.
As you remember I shared my Mercurial copy of trac-hacks.org's SVN repo, when it was down for some weeks last year.
I had issues retrieving the full repo too. Hgsvn was my first try, and I succeeded only after days of try-n-error. With hgsubversion, that I continued to use until now, it was only a matter of some hours. Both Hg extensions bailed out at seemingly random times. I could not reproduce specific revisions. Both extensions where able to resume, but I had to clean-up at least 5-8 times to get through with hgsubversion. From hgsvn I do not remember, but the error-resume cycles must have been 3 times as high, if not more, and the resulting hybrid repo clone grew to at least twice the size of the hgsubversion clone, so I'd never dare to attempt it again that way.
Your experience may vary, but my initial sync was before revision 9000, and we're well above 12000 now, so I would expect at least 8 hours to complete the procedure these days. Remember, that you'll have to take a look at the process every now and then to discover failure, cleanup/rollback to last completed revision and restart.