Проблема с подключением к гит. "фатальный: невозможно подключиться к github.com..."

У меня была проблема с моим git так долго, я пробовал все, что мог, и это ничего не меняет. Мой git хорошо работает локально, он работает с инициализацией, коммитами и т. д. Проблема в том, что когда я иду делать что-то с github, так как делаю git clone или git push Он не работает ни с github CLI, ни с Git Bash, ни с cmd. Любая из этих команд, которые я ввожу, просто выдает следующую ошибку:

fatal: unable to connect to github.com
github.com[0: 140.82.114.4]: errno=Unknown error

failed to run git: exit status 128

Я пробовал с некоторыми перспективами интернет-решения:

  • Этот ответ получил 26 голосов
  • Все эти решения о получении свободного порта 9418, попытке использования протокола Https, переключении между ssh и https
  • Я исправил host файл в C:\Windows\System32\drivers\etc месте для локального DNS, возможна неправильная конфигурация
  • Я переустановил Гит
  • Я ищу некоторые проблемы с сетью, и у меня есть ping от github.com сервера и команда tracert github.com для просмотра трассировки запросов github, и она также работает хорошо.
  • Я пытаюсь использовать следующую команду culr для загрузки zip-файла основной ветки через cmd, и это РАБОТАЕТ, загружая zip-файл !!!:
curl https://github.com/user/repo.git | git clone url:-

(конечно, заменив мои имена пользователей и репо)

  • Я настроил собственные настройки прокси-сервера git на unset:
git config --global --unset http.proxy
  • Я сделал тест github для подключения, получив хорошие результаты для всех IP-адресов серверов и всех других тестов.

Я думаю, что проблема в конфигурации git, связанной с портом или сетью, но я ее не нахожу.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
220
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Первое, что нужно проверить, — это удаленный URL-адрес, используемый для вашего репозитория.

Даже без клонирования вы можете проверить подключение с помощью:

# HTTP URL:
git ls-remote https://github.com/me/myrepo

# SSH URL:
git ls-remote [email protected]/me/myrepo

Если один из них работает, используйте его для клонирования репозитория.

Проверьте также:

  • для любой переменной среды, связанной с Git или curl (введите set в CMD)
  • для любых настроек прокси (опять же: set|grep -i proxy)
  • для любой проблемы PATH (попробуйте упрощенный PATH в CMD для тестирования)
Ответ принят как подходящий

я решил проблему, я попробовал это решение но другим способом. Добавление этого вручную в файл .gitconfig, расположенный в каталоге %USERPROFILE%:

[url "https://"]
    insteadOf = ssh://
    insteadOf = git://

потому что с командами cmd:

git config --global url."https://".insteadOf git://
git config --global url."https://".insteadOf ssh://

это была неправильная настройка конфигурации.

Я думаю, что произошло то, что git пытался получить доступ к GitHub через ssh, и порт, используемый для этого протокола, — 9418, который, похоже, каким-то образом заблокирован. Я обнаружил это с помощью инструмента netstat от cmd, который показывал мне SYN_SEND состояние запросов, когда я пытался выполнить git ls-remote. Это патч-решение, но оно исправлено :(

Хороший улов, вижу git ls-remote был полезен.

VonC 13.04.2023 04:45

да, это было так, большое спасибо, я многому научился с тех пор, как зашел на этот сайт, каждый день... из-за обширных знаний здесь. Ценю это и еще раз спасибо!!

FrankAyra 13.04.2023 06:45

Другие вопросы по теме