Authentication failed...
Вы работаете в IDE, делитесь проектом на GitHub, и всё в порядке. Но в какой-то момент вы решаете запушить изменения на удалённый репозиторий через терминал и вдруг сталкиваетесь с необходимостью пройти аутентификацию: вас просят ввести имя пользователя и пароль. Вы вводите данные, нажимаете Enter, но почему-то возникает ошибка — войти не удалось.
remote: No anonymous write access. fatal: Authenticaion failed for 'https://github.com/<ваш репозиторий>'
Но почему, если вы ввели правильный пароль?
На самом деле с 2021 года GitHub больше не поддерживает пароли для https://. Это означает, что войти по логину и паролю не получится. Нужно использовать Personal Access Token или SSH.
О том, как использовать SSH-ключи, читайте здесь.
Но что, если вы уже сгенерировали ключ? Например, вы создали его для работы над прошлым проектом. В таком случае ключ у вас уже есть, и вы хотите использовать и в этот раз.
Тогда вам нужно воспользоваться командой git remote -v, чтобы увидеть подключённые удалённые репозитории, с которыми работает локальный проект. Если они начинаются с https://, то вам нужно изменить URL.
Сделать это можно командой git remote set-url origin git@github.com: username/repo.git, где username — ваше имя на GitHub, а repo — название удалённого репозитория.
Например, для пользователя The-uncanny-valley и репозитория по адресу https://github.com/The-uncanny-valley/CatChat это выглядит следующим образом:
git remote set-url origin git@github.com:The-uncanny-valley/CatChat.git
Вновь проверьте подключённые удалённые репозитории:
git remote -v
Теперь вы должны увидеть нечто подобное:
Если строка начинается с git@github.com, то всё прошло успешно. С этого момента для доступа к GitHub Git будет использовать SSH-ключ, сохранённый на компьютере.
Вот и всё, теперь вы можете использовать pull, push и другие команды git, требующие аутентификации.