我最近开始得到以下git错误git svn fetch
或git svn rebase
,但其他本地git命令工作正常:
以下是详细的错误消息:
C:\Git\bin\perl.exe: ** unable to remap C:\Git\bin\msys-ssl-0.9.8.dll to same address as parent -- 0x678F0000 0 [main] perl 1300 sync_with_child: child 7092(0x324) died before initialization with status code 0x1 567 [main] perl 1300 sync_with_child: *** child state child loading dlls
环境:
git版本1.8.5.2.msysgit.0
操作系统:Windows7 64位
SVN:1.8.4-SlikSvn-1.8.4-X64
Cygwin:我的机器上没有安装cygwin
路径:C:\ Program Files(x86)\ RSA SecurID Token Common; C:\ WINDOWS\system32; C:\ WINDOWS; C:\ WINDOWS\System32\Wbem; C:\ Program Files(x86)\ Enterprise Vault\EVClient \; C:\ Program Files(x86)\ 1E\SMSNomad \; C:\ Pro gram Files(x86)\ WinMerge; C:\ work\tools\SlikSvn\bin; C:\ Program Files\TortoiseSVN\bin;
我尝试了多种解决方案,包括将mysysgit从1.8.2升级到最新的1.8.5.2,但还没有运气.
此问题的根本原因及其任何变体是两个DLL已映射到同一地址,从而导致冲突.个别案件可以使用rebase解决.
Msysgit 1.9.4-preview20140815包含libsvn_repos-1-0.dll和libneon-25.dll库的此问题.使用该命令git svn
会提供与问题中描述的类似的错误消息.
错误报告包含此解决方法:
Rebase to free regions via: (execute as Administrator) rebase -b 0x64000000 bin/libsvn_repos-1-0.dll rebase -b 0x64200000 bin/libneon-25.dll
在此之后git svn
正常工作.
其他情况应该以类似的方式解决,为发生问题的DLL选择空闲地址.