Re: git-svn: incomplete data after terminated "git svn clone"
- From
Thomas Rast <trast@student.ethz.ch>
- Date
- Feb 10, 2009, 13:42 UTC
- Message-ID
- <200902101442.32772.trast@student.ethz.ch>
- In-Reply-To
- <40aa078e0902100350m2d885516o853b1ec56eb43ce1@mail.gmail.com>
Erik Faye-Lund wrote:
Show 8 quoted lines
> I recently tried to clone an existing (very big) SVN repo by using > "git svn clone <repo> -s", and by mistake I pressed Ctrl-C after the > clone operation had been running for ~16 hours. When trying to > re-issue the clone, I got the error message "Incomplete data: Delta > source ended unexpectedly at /home/erifay01/libexec/git-core/git-svn > line 4249" after git-svn fetching another 8 or so revisions. Now, I > realize I shouldn't have done this, but I'd still prefer avoiding to > have to re-do it all.
[...]
> Now, I'm wondering if there's any way of going back to the state > before I pressed Ctrl-C, so I can rebuild from there. I know what > revision I terminated at, and I have the corresponding SHA.
Some ideas:
First you can try to reset the git-svn head to the SHA of the commit before (in case the one it stopped at ended up being corrupted). For example, if $stopped is the commit you interrupted it at,
git update-ref refs/remotes/git-svn $stopped^
Adjust the ref name if you used a trunk/branches layout. Then remove the .git/svn/ cache and try again.
Failing that, you could test if this also happens when only looking at a few surrounding revisions, for example if the failure was around revision 100:
mkdir ../new-test cd ../new-test git svn init <args you gave to the other git svn init/clone> git svn fetch -r 95:105
--
Thomas Rast
trast@{inf,student}.ethz.ch