> 肖建晶 <[email protected]> wrote:
> > hi,
> > git developers. I found a bug when i want to convert webkit to git
> > there are some branch named safari... in webkit svn repo.
> > when i want to convert them to branch in git. a problem happen.
> >
> > if you want to reproduce the problem, just follow the guide below.
> > 1. git svn clone -s https://svn.webkit.org/......
>
> Do you mean https://svn.webkit.org/repository/webkit ?
>
You are right. I use this url to fetch svn repo
> > 2. when it runs to about r13800, stop it and rerun the above command
>
> So running "clone" again? Normally, I'd run "git svn fetch" if
> I stopped and want to resume (or my Internet connection drops,
> which happens a lot).
>
In fact, git svn clone again and git svn fetch will do nearly the same thing.
So we could use these two commands either. I just get used to git svn clone.
> > 3. the git client will check the refs it already found, and
> > if it met a ~ in the branch name. it will failed to
> > proceed. error is git thinks it an invalid ref name
> >j
> > i digged into it, and found a solution in
> > git/perl/git/svn.pm. I mod this file and bypass the
> > problem.
>
> Can you show us what you did to perl/Git/SVN.pm?
>
> the "refname" sub in perl/Git/SVN.pm already escapes "~",
> it seems.
>
*** i used this sed to fix it:
sed -i "/refname = /a\\\t\t\$refname =~ s/~/%7E/g;" perl/Git/SVN.pm
sed -i "/refname = /a\\\t\t\$refname =~ s/ /%20/g;" perl/Git/SVN.pm
You can use the regex above to find the exact place (about line 93
)where the issue happens. I think after the sentence refname = ...., variable
refname should be right, but it seems not. Please examine if after that
sentence, refname contains some symbol like ~ or " "(space). If it does, the
command after that may not deal with it correctly. Please be kind to check it
again.
> > plean be kind to fix the problem and remind me the fix
> > commit, and i will update to a new version.
>
> We'll try, but I think we need more information. Thanks.
unfortunately, after several days of work. The whole webkit is not converted
into git repo, because I met another problem. It said index mismatch. And I was
not able to solve it anymore. I plan to convert it later again. It's awful.
If you have any question, feel free to inform me. I always eager to help in my
spare time.