开发者

git svn clone died of signal 11 under cygwin

I have a problem with git svn under cygwin

user@comp /cygdrive/c/repositories/git/repo $git svn clone --username=username "https://host/svn/repos/repo" .
Initialized e开发者_运维知识库mpty Git repository in /cygdrive/c/repositories/git/repo/.git/
error: git-svn died of signal 11

How to handle this?

user@comp ~ $svn --version
svn, version 1.6.15 (r1038135)
   compiled Nov 29 2010, 14:09:28

user@comp ~ $git --version
git version 1.7.4


I found a good tip here:
http://pwizardry.com/devlog/index.cgi/2010/03/29#svn2git

If you cd to the new repository and type
git svn fetch
it will continue where it left of.

I had the same issue, and the solution seems to work for me.


I was figth with this problem for a 5 hours. I was trying to use git from cygwin. But unfortunatly... This hucking

git-svn died signal 11

while trying to do

git svn clone http://repo.com/path/to/my/repo.git -s

really pissed me of... Addition i doing it after work being on my work place... :) We are used proxy to connect to svn repo from our network. I was tried rebaseall... Serf internet for solving the problem... But unfortunately unlucky(Не фортануло не повезло...)...

So i decide that, i hucking, solve this problemm off!

I go to wokr in my holyday and do this:

  • Remove git package from my cygwin.
  • Remove any another git installation from my windows environment (like tortoisegit)
  • Download and install msysgit (http://msysgit.github.io/)
  • Install it.
  • Configure git to use proxy as below.
  • Run cmd.
  • execute git config --global http.proxy http://my.proxy.com:8080
  • Now we need to configure svn to use proxy when you run git svn clone. Or else you will get this error:

    RA layer request failed: PROPFIND request failed on '/svn/repos/my-project': PROPFIND of '/svn/repos/my-project': could not connect to server (https://my.svn.repository.behinde.proxy.com) at /usr/lib/perl5/site_perl/Git/SVN.pm line 310    
    

And this is some tricky. For it we need to edit /.subversion/servers in home folder. Not %appdata%\.subversion\servers , not c:\users\userlogin\.subversion\servers no! You need do next:

  • run git bash (that you have after installing msysGit) from

    "Start" -> all programms -> git -> Git bash.`
    

this is a link that point to "C:\Program Files (x86)\Git\bin\sh.exe" --login -i in my case

  • Now you need execute "cd" command.
  • Now do

    ls -al
    

    look for .subversion folder

  • And now edit file under this folder vi .subversion/servers you need to find section [groups] and add your server to what you want to made proxy connection for example:

    [groups]
        myserver = www.some.server.com
    
  • Now in same file add strings like this:

    [myserver]
        http-proxy-host = http[or https]://[login:password_to_proxy@]my.proxy.com
        http-proxy-port = 8080your proxy port
    

for example:

    [myserver]
        http-proxy-host = http://my.proxy.com
        http-proxy-port = 8080

now you are configure all you need (i hope :) ) And now you may run cmd and make git svn clone https://your.repository.com/path/to/repo -s

And work with svn using git svn for your pleasure. :)


Try running perl -e 'require SVN::Core; print "$SVN::Core::VERSION\n"'. That should print '1.6.15' in your case. If it spits out an error instead, it probably means that you don't have the perl SVN module installed. Try installing the 'subversion-perl' package in cygwin.


In my case it was due to not being able to reach the repository.

I had to add my proxy settings to ~/.subversion/servers to let svn be able to check it out.


It seems git-svn crashes with Segmentation fault (that could indicate a software bug). The git-svn executable file is just a plain perl script, so to fix it you've the following possibilities:

  • upgrade perl and make sure it uses that new version,
  • try changing shebang of git-svn binary into upgraded perl,
  • re-install subversion to use upgraded bindings to perl:

    • OS X: brew reinstall subversion --with-perl thenbrew link --overwrite subversion
    • Linux: apt-get install git-svn libsvn-perl
  • locate other non-crashing git-svn and use them instead, e.g.

    which -a git-svn
    locate git-svn | grep git-svn$
    

If you're on OS X, check for more ideas here.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜