На работе для взаимодействия с git-репозиторием мы используем SourceTree. Один раз он был сконфигурированным, и больше я в настройки не заходил. Но 20 сентября стала доступна новая macOS Sierra. Я долго откладывал обновление, боясь, что после этого что-нибудь обязательно сломается… В общем, так и получилось. SourceTree перестал подключаться к репозиториям и выдавал ошибку аутентификации:
Permission denied (publickey)
В git мы авторизуемся по ключу. После обновления файл ключа находился в том же месте, что и до этого, его содержание тоже совпадало с тем, что было экспортировано в GitLab. После некоторого гугления выяснилось, что SourceTree по умолчанию использует при подключении тот ключ, который добавлен к ssh-агенту. После установки новой macOS эти настройки сбросились и ключ, естественно, не задействовался.
Проверить, какие ключи добавлены к агенту, можно с помощью следующей команды в терминале:
1 |
ssh-add –l |
Если нужного ключа не окажется в списке, нужно его добавить с помощью
1 |
ssh-add <путь_к_файлу> |
После этой нехитрой процедуры мой SourceTree без проблем смог подключиться к GitLab.
Полезная статья? Их будет больше, если вы поддержите меня!