Я с радостью вытаскивал из своего репозитория несколько месяцев, до сих пор ..: '(
Впервые git теперь просит меня добавить github.com в файл known_hosts. Раньше этого не было, у меня даже не было каталога .ssh до тех пор, пока я не сказал «да» на вопрос ниже.
# git pull
Host 'github.com' is not in the trusted hosts file.
(ssh-rsa fingerprint md5 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48)
Do you want to continue connecting? (y/n) y
/usr/bin/ssh: Connection to git@github.com:22 exited: No auth methods could be used.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Я не могу понять, что могло измениться ... делаю git status
работает, но я ничего не могу тянуть.
Я не могу сделать ssh -vvv
, поскольку это в небольшой встроенной системе Linux, и, очевидно, ssh не компилировался с опцией подробного описания, поэтому я не могу точно знать, что происходит.
Разве я не могу извлечь из репозитория без добавления ssh-ключа github? Все это происходит в небольших встроенных системах, которые я развертываю в разных местах, поэтому мне не нравится добавлять какие-либо данные учетной записи, я просто хочу, чтобы последняя версия была загружена с github.
Моя конфигурация git:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = git@github.com:MyUser/MyRepo.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
Я пробовал изменить git на https, но вместо этого выдает ошибку сертификата. (Я отредактировал имя пользователя и репо)
Поскольку вы упомянули, что это встроенная система, убедитесь, что дата и время указаны правильно. У меня была проблема с HTTPS, когда система в основном думала, что это было в 1970 году, и отказывалась от сертификата Github.
Также вы можете найти здесь ожидаемые ключи хоста SSH: https://help.github.com/articles/github-s-ssh-key-fingerprints/. Хорошая идея - проверить их, когда что-то, что раньше работало, теперь выходит из строя, это может быть мужчина в середине.
Я не нашел первопричины, но нашел решение.
Github заявляет, что рекомендуется использовать HTTPS, поскольку его легче достичь через брандмауэры и прокси по сравнению с SSH: https://help.github.com/articles/which-remote-url-should-i-use/
Решение: измените URL-адрес на https. И настройте git: git config --global http.sslVerify false
как объяснено здесь: https://confluence.atlassian.com/fishkb/unable-to-clone-git-repository-due-to-self-signed-certificate-376838977.html
Я бы оценил качество этого решения как: Временное решение. Если у кого-то есть что-нибудь получше, я бы хотел услышать ;-)