Ответ 1
Я не совсем уверен, почему, но требуется довольно долгое время, чтобы вернуться из подсказки выше, которая спрашивает, принимать или не принимать сертификат. После ожидания около 15 минут операция завершилась.
Я пытаюсь запустить git для моего локального репозитория и использовать SVN для моего центрального репозитория для проекта CodePlex. Я загрузил самую последнюю версию msysgit, но поддержка SVN не работает.
Следующее успешно инициализирует новый пустой репозиторий, а затем застревает:
git svn init https://myproject.svn.codeplex.com git svn fetch
После попытки выполнить выборку я получаю следующее:
Error validating server certificate for 'https://myproject.svn.codeplex.com:443' : - The certificate is not issued by a trusted authority. Use the fingerprint to validate the certificate manually! Certificate information: - Hostname: *.svn.codeplex.com - Valid: from May 23 02:11:05 2009 GMT until May 23 02:11:05 2010 GMT - Issuer: redmond, corp, microsoft, com - Fingerprint: f0:89:78:18:47:70:e4:dc:27:01:27:9c:6f:44:4c:3f:8a:9b:ad:79 (R)eject, accept (t)emporarily or accept (p)ermanently? p
Как вы можете видеть, я пытаюсь навсегда принять сертификат, но msysgit просто сидит и никогда не выполняет выборку.
Я что-то делаю неправильно? Поддержка там отсутствует? С декабря я нашел аналогичный пост. Я не уверен, что симптомы, которые я испытываю, одинаковы или нет.
Я не совсем уверен, почему, но требуется довольно долгое время, чтобы вернуться из подсказки выше, которая спрашивает, принимать или не принимать сертификат. После ожидания около 15 минут операция завершилась.
git -svn не работает хорошо в Windows в моем опыте. Я бы посоветовал поставить ваш импорт git на что-то вроде github или любого другого хоста git и использовать "pure" git в окнах. Это предполагает, что у вас есть unix (или, по крайней мере, cygwin, который должен работать лучше, чем MSysgit, я думаю), чтобы сделать обновления git -svn. Это не идеальное, очевидно.
Я получил эту работу, добавив сертификаты в цепочку auth. Вы должны получить сертификат-эмитент (CA) вашего сертификата-сервера в формате .pem и скопировать его в каталог certs (PATH_TO_GIT\ssl\certs) с хешированным именем. Создайте хэш так:
C:\> PATH_TO_GIT\bin\openssl.exe x509 -noout -hash -in PATH_TO_CA_CERT.PEM
Переименуйте CA файл на выход команды и добавьте ".0" в качестве расширения (например, 0dbd0096.0). Таким образом openssl найдет CA, который может использоваться для сертификации вашего сертификата сервера.
Найти дополнительную информацию здесь: http://gagravarr.org/writing/openssl-certs/others.shtml#ca-openssl
Codeplex и SVN так же медленны, как и архаичные. Вот то, что сработало для меня (разные покупки проекта вы получаете идею)
git svn clone https://iswix.svn.codeplex.com/svn -r42691:HEAD
где 42691 был самым старым набором изменений в репо (или самый старый, который вы хотите получить), а HEAD - это... duh, голова.
Я нашел номер набора изменений, просмотрев вкладку истории на странице исходного кода. Это последняя.
Я пробовал всевозможные настройки с TortoiseGit, но он не играл бы, командная строка или грудь.
Теперь сделай чашку чая или испеките торт, это займет довольно много времени.
Если (в Windows) вы открываете Монитор ресурсов и смотрите perl.exe под "network" и видите, что он разговаривает с svn.codeplex.com, тогда он работает.
используйте http без ssl. Я использую fetch из sourceforge https://xmlvm.svn.sourceforge.net/svnroot/xmlvm/ эта проблема возникает, и я просто изменяю url на http://xmlvm.svn.sourceforge.net/svnroot/xmlvm/ Он отлично работает