cygwin Git "протокол" https " не поддерживается или отключен в libcurl"

Я использую cygwin под Windows 7. Все было хорошо, пока однажды я не обнаружил, что не могу использовать git для клонирования репозиториев github, и он говорит, что "протокол "https" не поддерживается или отключен в libcurl". Но когда я набираю "curl -- version", он говорит

завиток 7.39.0 (x86_64 с-неизвестно-с Cygwin) libcurl использует/7.39.0 в OpenSSL/1.0.1 к помощи zlib/1.2.8 этот пакет содержит символы отладки/1.29 libssh2/1.4.2 Протоколы: dict файл ftp ftps gopher http https imap IMAP ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp Особенности: отладка IDN IPv6 Largefile GSS-API SPNEGO NTLM NTLM_WB SSL libz TLS-SRP Metalink

Я думаю, что это означает, что https поддерживается curl. Кто-нибудь может мне помочь? Спасибо заранее.

2 ответов


в качестве обходного пути к использованию HTTPS вы можете переключиться на использование SSH в качестве протокола для git. Когда я клонирую репозитории, я обычно использую SSH, так как он немного более гибкий, и мне иногда приходится иметь дело с прокси. Изменение протокола может быть выполнено путем переключения URL-адресов вашего GitHub remote. Если вы перечислите пульты, которые у вас есть в настоящее время, вы увидите что-то вроде (Если вы находитесь в каталоге проекта):

origin  https://github.com:someuser/project.git (fetch)
origin  https://github.com:someuser/project.git (push)

вы можете переключиться https:// to git@git://, и добавить ключи SSH в git для компьютера, над которым вы работаете. Затем вы сможете подключиться к GitHub через SSH и проверить репозитории git по протоколу SSH, избегая HTTPS. Как только вы настроите свой открытый ключ на GitHub, вы сможете сделать passwordless SSH в GitHub.com, и доступ к репозиториям GitHub.

вы можете переключиться с HTTPS на протокол SSH с помощью , как описано здесь. Вы передадите ему удаленное имя, которое будет origin by по умолчанию:

git remote set-url origin git@github.com:someuser/project.git

и вы должны быть хорошо идти.


Я думаю, что это означает, что https поддерживается curl.

точнее, GitHub больше не разрешает эту конкретную версию curl (на момент вопроса, январь 2015 года): см. bagder/curl/issues/267.

этот вопрос относится к новой GitHub SSL отчет, и соответствующее объявление:

чтобы сохранить GitHub как можно более безопасным для каждого пользователя, мы удалим поддержку RC4 в нашем Настройка SSL на github.com и в API GitHub 5 января 2015 года.

попробуйте обновить curl:текущий пакет (июль 2015 года) is curl-7.43.0-1.


Примечание: вместо Cygwin вы можете использовать последние Git для Windows: просто распакуйте PortableGit-2.4.5.1-4-й-релиз-кандидат-64-бит.7z.exe в любом месте вы хотите и запустить сеанс bash (например, легкий cygwin, с 200 + Linux команды.)

C:\path\to\PortableGit-2.4.5.1-4th-release-candidate-64-bit\git-bash.exe

это включает в себя завиток, совместимый с GitHub:

$ curl --version
curl 7.43.0 (x86_64-w64-mingw32) libcurl/7.43.0 OpenSSL/1.0.2c zlib/1.2.8 libidn/1.30 libssh2/1.6.0 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smtp smtps telnet tftp
Features: IDN Largefile SSPI Kerberos SPNEGO NTLM SSL libz TLS-SRP