Git Ошибка svn fetch/rebase: невозможно переназначить msys-ssl-0.9.8.dll на тот же адрес, что и родительский - 0x678F0000
Недавно я начал получать следующую ошибку 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
грамм Файлы (x86)\WinMerge; C:\work\tools\SlikSvn\bin; C:\Program Files\TortoiseSVN\bin;
Я попробовал несколько решений, включая обновление mysysgit с 1.8.2 до версии 1.8.5.2, но пока не получилось.
Ответы
Ответ 1
Основная причина этой проблемы и любые ее варианты - две библиотеки 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, с которыми возникает проблема.
Ответ 2
Не лучший ответ, но перезагрузка исправила его для меня.
Похоже, что это связано с этой проблемой, поэтому, возможно, связано с адресом-пространством.
Ответ 3
У меня была такая же проблема с git 1.9.4-preview20140815 в Windows Server 2008 R2. Перезагрузки не помогли.
Я понизил git до версии 1.8.1.2-preview20130201 и решил проблему.
Ответ 4
Просто попробуйте удалить mysysgit и переустановить его. Для моего случая это решило проблему.
Приветствия
Ответ 5
У меня была аналогичная проблема, и я попробовал перезагрузить свою машину, но это не сработало. Он работал, когда я понизил GIT до 1.8.5.2.
Ответ 6
Такая же проблема, все перезагрузки DLL-адресов не работали для меня. Теперь 'Git Svn' снова работает для меня. После шага решена проблема (Git 1.9):
1) Deinstall
2) Перезагрузите
3) Установка последней версии git (2.7)
Ответ 7
У меня была аналогичная проблема в системе с git 1.9.5.msysgit.0.
DLL, указанная в ошибке для меня, была libsvn_swig_perl-1-0
.
Точная ошибка:
C:\Git\bin\perl.exe: *** unable to remap C:\Git\bin\libsvn_swig_perl-1-0.dll to same address as parent -- 0x667B0000
В моей системе исходный базовый адрес Git\bin\libsvn_swig_perl-1-0.dll
был 0x666C0000
(666C0000 to 66790FFF
).
Мне удалось решить проблему с rebase -b 0x667C0000 libsvn_swig_perl-1-0.dll из каталога Git\bin (что 0x667C0000
является моей исходной базой плюс случайным 0x00100000
).
Один из способов увидеть текущий базовый адрес dll - dumpbin /headers.
Ответ 8
У меня была такая же проблема. Перезапуск не помог, понижение не помогло, но я сделал
git reset --hard
и теперь он работает.
Я знаю, что это побочный эффект, но если кто-то в отчаянии, как будто я...