Не получается авторизоваться в GitHub через GitBash
При попытке клонировать собственный (приватный) репозиторий через GitBash возникает ошибка:
fatal: Произошла ошибка при отправке запроса.
fatal: Запрос был прерван: Не удалось создать защищенный канал SSL/TLS.
Логин/пароль ввожу верные. Git последней версии. С чем может быть связано возникновение этой проблемы и как решить её?
Ответы (3 шт):
Вероятно у вас стоит Windows 7, причем без обновлений обеспечивающих возможность использования TLS 1.1 or TLS 1.2 в приложениях использующих WinHTTP (в вашем случае - Git Credential Manager).
Как минимум вам нужно обновление KB3140245, а в идеале - переход на версию Windows, поддержка которой все ещё осуществляется.
Я прочитал тот ответ, котрый Вам уже написали.
Мне кажется, что дело не в этом. Начиная с 13 августа гитхаб вроде бы перестал поддерживать аутентификацию по паролю для выполняемых через git операций. Вот что они пишут в их блоге:
"No more password-based authentication for Git operations
In December, we announced that beginning August 13, 2021, GitHub will no longer accept account passwords when authenticating Git operations and will require the use of strong authentication factors, such as a personal access token, SSH keys (for developers), or an OAuth or GitHub App installation token (for integrators) for all authenticated Git operations on GitHub.com. With the August 13 sunset date behind us, we no longer accept password authentication for Git operations"
То есть, если следовать этой логике, Вам нужно просто настроить авторизацию по ключу. Или, может быть, использовать двухфакторную аутентификацию, но этого я еще не пробовал.
Совершенно точно работает доступ по ssh.
Установите клиента
opensshдля Windows.Создайте ключ
cd; ssh-keygen -f .ssh/my-github-key -t ed25519 -C "Github key"
В результате в папке $env:USERPROFILE (в терминах Powershell) появятся файлы приватного ключа .ssh\my-github-key и .ssh\my-github-key.pub публичного ключа.
- Загрузите сгенерированный публичный ключ в Github: откройте файл
$env:USERPROFILE\.ssh\my-github-key.pubв текстовом редакторе и дальше действуйте по инструкции
Можно просто распечатать в консоли:
PS> cat ${env:USERPROFILE}\.ssh\my-github-key.pub
ssh-ed25519 AAAA...BK0t Github key
Вывод команды скопируйте в буфер обмена и далее по инструкции.
- После того, как создадите в Github ключ SSH, откройте в текстовом редакторе файл
${env:USERPROFILE}\.ssh\configи добавьте в него строки:
Host my.github.com
Hostname github.com
User git
IdentityFile ~/.ssh/my-github-key
- Клонируйте ваш приватный репозиторий в командной строке
git clone my.github.com:your_profile/your_repo
Я проверил сейчас в Windows 10/Powershell 7/OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2/git version 2.25.0.windows.1 -- работает и clone, и push.