Github: ошибка клонирования моего личного репозитория
Я пытаюсь клонировать проект GitHub с использованием https-URL, но с ошибкой он не работает:
$ git clone https://[email protected]/foo/foo-private.git
Cloning into foo-private...
Password:
error: error setting certificate verify locations:
CAfile: /bin/curl-ca-bundle.crt
CApath: none
while accessing https://[email protected]/foo/foo-private.git/info/refs
fatal: HTTP request failed
Что я делаю неправильно?
Ответы
Ответ 1
Я видел это в Windows, с msysgit 1.7.2.3. Вы должны исправить путь к bin/curl-ca-bundle.crt. Мне нужно было указать абсолютный путь, используя обратные черточки:
git config --system http.sslcainfo "C:\Program Files (x86)\git\bin\curl-ca-bundle.crt"
или — не рекомендуется /mdash; вы можете полностью отключить проверку SSL, выполнив:
git config --system http.sslverify false
В обоих случаях это приведет к изменениям в файле [ git -install-dir]/etc/gitconfig, который также может быть отредактирован напрямую.
(Исходные решения найдены в http://github.com/blog/642-smart-http-support)
Ответ 2
Я решил проблему установки Git из: https://git-for-windows.github.io/
Найдите путь к файлу сертификата:
D:\Program Files\ Git\mingw64\ssl\certs\ca-bundle.crt
Настройте путь Git:
git config --system http.sslcainfo "D:\Program Файлы\ Git\mingw64\SSL\сертификаты\ча-bundle.crt"
Повторите попытку
Ответ 3
Если вы используете MSYS2...
Просто установите пакеты сертификатов со следующими командами:
32 бит
pacman -S mingw-w64-i686-ca-certificates ca-certificates
64 бит
pacman -S mingw-w64-x86_64-ca-certificates ca-certificates
Ответ 4
Если вы использовали Cygwin, вы можете установить пакет ca-сертификатов с помощью
кв-Лебедь:
wget rawgit.com/transcode-open/apt-cyg/master/apt-cyg
install apt-cyg /usr/local/bin
apt-cyg install ca-certificates
Как установить пакет cygwin из командной строки?
Ответ 5
РЕШИТЬ:
Я получил эту ошибку, когда установил обновление в установщик Windows Git. Случилось так, что я не установил его с правами администратора, поэтому Git был установлен в "C:\Users\my_name\AppData\Local\Programs" вместо "C:\Program Files". переустанавливая Git, поскольку администратору разрешено помещать его в C:\program Files, и все прошло отлично!
Ответ 6
git config --global http.sslverify "false"
Решает проблему.
После этого появится всплывающее окно для ввода имени пользователя и пароля.
Ответ 7
Это сработало для меня (я использую Manjaro linux). Я запускаю cmd для просмотра ca-сертификатов:
$ curl-config --ca
**/etc/ssl/certs/ca-certificates.crt**
Но на самом деле я нашел сертификаты на пути:
**/etc/ca-certificates/extracted/ca-bundle.trust.crt**
Затем добавьте конфигурацию в ~/.gitconfig(если не существует, создайте ее):
**vim ~/.gitconfig**
[http]
sslVerify = true
sslCAinfo = /etc/ca-certificates/extracted/ca-bundle.trust.crt
[user]
email = <email of github account>
name = <username of github account>
Это работает!
.rbenv]$ git pull
remote: Counting objects: 70, done.
remote: Compressing objects: 100% (47/47), done.
remote: Total 70 (delta 39), reused 12 (delta 12), pack-reused 6
Unpacking objects: 100% (70/70), done.
From https://github.com/sstephenson/rbenv
c43928a..efb187f master -> origin/master
+ 37ec781...7e57b52 user-gems -> origin/user-gems (forced update)
Updating c43928a..efb187f
Fast-forward
libexec/rbenv-init | 4 ++--
libexec/rbenv-version-file | 1 +
test/init.bats | 2 +-
test/test_helper.bash | 25 +++++++++++++++----------
4 files changed, 19 insertions(+), 13 deletions(-)
Ответ 8
git config --system http.sslcainfo /bin/curl-ca-bundle.crt
Это работает. Вам не нужно давать полный путь.
Ответ 9
Я столкнулся с этим во время git pull. Для меня был изменен глобальный файл конфигурации git, который исправил проблему.
Откройте домашнюю папку и откройте файл .gitconfig. Обычно C:\Users \.gitconfig
Если файл отсутствует, создайте его
[HTTP]
sslcainfo = E:\systools\ git -1.8.5.2\bin\curl-ca-bundle.crt
Там вы должны указать свой собственный путь установки git. Я использовал портативную версию git здесь.
Затем git clone/pull будет работать.
Ответ 10
Если вы используете командную оболочку Git, которая устанавливается с помощью приложения GitHub для Windows, это и другие проблемы могут отображаться после обновления. Просто запустите приложение Git Hub windows и снова закройте его. Затем оболочка снова будет работать нормально. Проблема в том, что обновление не завершается до тех пор, пока не будет запущено приложение Windows. Просто использование оболочки на ней не приводит к завершению обновления.
Ответ 11
Я видел это на своем Github для Windows.
Я рекомендую удалить Github для Windows и снова установить его.
До этого я пробовал несколько способов без успеха, но это решение сработало для меня!
Ответ 12
В Windows с использованием msysgit у меня была эта ошибка, и причиной явилось дополнение наших корпоративных сертификатов прокси.
Если вы отредактируете свой curl-ca-bundle.crt, вы должны убедиться в своих линах. В случае curl-ca-bundle вы должны использовать линеаризацию Linux-Style.
> git ls-remote --tags --heads https://github.com/oblador/angular-scroll.git
fatal: unable to access 'https://github.com/oblador/angular-scroll.git/': error setting certificate verify locations:
CAfile: C:\Program Files (x86)\Git\bin\curl-ca-bundle.crt
CApath: none
Вы можете использовать notepad ++ для преобразования линеек в Linux (linefeed).
Ответ 13
С другой стороны, эта проблема может возникнуть в Windows, если пользователь, который пытается использовать git, отличается от пользователя, который его установил. Ошибка может указывать на то, что git не может получить доступ к файлам сертификатов. Установка git в качестве администратора и использование ответа @rogertoday разрешили мою проблему.
Ответ 14
Я нашел хорошее решение для добавления/обновления сертификатов CA на RHEL/CentOS 6, что является основной причиной проблемы.
Поскольку они становятся устаревшими дистрибутивами, полномочия cacert в этой системе не обновлялись до выполнения команды sudo yum update
.
Не удалось решить проблему до тех пор, пока в режиме GIT_CURL_VERBOSE не появится проблема с каналом.
Ответ 15
В Linux я получил эту ошибку и исправил ее, запустив sudo update-ca-certificates
.
Ответ 16
Для меня проблема решена, когда в окне "Мои окна 10" я попытался удалить git и повторно установить, используя Windows Cmd по умолчанию не git Bash
Откройте CMD и запустите следующие
//Once installed try to resintall the bin folder
git config --system http.sslcainfo \bin/curl-ca-bundle.crt
//disable ssl verification
git config --global http.sslverify "false"
//Then try to clone repo again
git clone [email protected]:account/someproject.git
Ответ 17
Если кто-то еще сталкивается с этой проблемой в Git для Windows и не имеет curl-ca-bundle.crt
любой точке вашей системы даже после переустановки, это тот процесс, который я выполнил:
- Загрузите последнюю версию curl здесь: curl download mirror
- Извлеките и перейдите к
curl-**.**.*/lib
в командной строке - Запустить
./mk-ca-bundle.prl
- Скопируйте
ca-bundle.crt
в свой git-путь и обновите конфигурацию, как указано в других ответах
Кричите эту суть, чтобы помочь мне сделать установку.
Ответ 18
Я решил эту проблему на Windows Server 2016, переустановив ее и выбрав "родную библиотеку безопасного канала Windows" на этапе установки "Выбор транспортного сервера HTTPS".
Ответ 19
Решение, которое работает для меня в Windows 64bit заключается в следующем
git config --system http.sslverify false
Ответ 20
самый простой способ set GIT_SSL_NO_VERIFY=true git clone..
Ответ 21
Мне удалось решить эту проблему с помощью следующей команды.
git config --system http.sslverify false
Ответ 22
Я получил эту ошибку после перемещения git через жесткие диски. Удаление и переустановка в новом месте фиксированных вещей
Ответ 23
В git для Windows вы также можете переустановить и выбрать собственный метод проверки сертификата Windows (OpenSSL по умолчанию). Это пропустит проверку OpenSSL и вместо этого использует родной Windows, который не требует поддержки отдельного инструмента (OpenSSL) и сертификатов.
Отлично работал для меня :)
Ответ 24
Следующая команда
git clone git://github.com/username/projectname.git
работал для моих нужд, но я предполагаю, что вы хотите больше, чем доступ только для чтения, правильно?