Git push по HTTPS на GitHub требует пароль, но аутентификация не проходит
При выполнении команды:
Git просит ввести логин и пароль GitHub. Я ввожу правильный пароль, но получаю ошибку:
Почему пароль не работает и как правильно выполнить пуш?
год назад
Nikolai Gagarinov
Ответы
Заголовок
Git push по HTTPS на GitHub требует пароль, но аутентификация не проходит
Вопрос
При выполнении команды:
Git просит ввести логин и пароль GitHub. Я ввожу правильный пароль, но получаю ошибку:
Почему пароль не работает и как правильно выполнить пуш?
Ответ
GitHub больше не поддерживает аутентификацию по обычному паролю для операций Git через HTTPS. Вместо пароля нужно использовать personal access token (PAT).
-
Создать токен на GitHub
- Перейдите в Settings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token
- Выберите нужные права (например,
repo) и сгенерируйте токен - Скопируйте токен — после создания его нельзя будет снова посмотреть
-
Использовать токен вместо пароля при пуше
-
Альтернатива: работать через SSH Если настроить SSH-ключи, вводить пароль или токен при каждом пуше не потребуется. Инструкции: Установка и настройка SSH
Использование токена или SSH решает проблему с аутентификацией при пуше по HTTPS.
год назад
Nikolai Gagarinov
С августа 2021 года GitHub не принимает пароль от аккаунта при работе с Git по HTTPS. Для HTTPS нужен персональный токен доступа (personal access token) или подключение по SSH.
Вариант 1. Токен вместо пароля
- На GitHub: аватар → Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token.
- Выберите срок действия, нужные репозитории и права: для
pushдостаточно Contents: Read and write. - Скопируйте токен — GitHub покажет его один раз.
- Выполните
git pushснова и при запросе пароля вставьте токен.
Чтобы не вводить токен каждый раз, сохраните его в хранилище учётных данных:
Если Git не спрашивает пароль, а сразу пишет ошибку, в системе сохранён старый пароль. Удалите его: на Windows — Диспетчер учётных данных → запись git:https://github.com, на macOS — Связка ключей → запись github.com.
Вариант 2. Вход через браузер
Git Credential Manager, который ставится вместе с Git для Windows, при первом push открывает окно входа в GitHub через браузер. Токен создаётся сам. То же делает GitHub CLI:
Вариант 3. SSH-ключ
Скопируйте открытый ключ в GitHub: Settings → SSH and GPG keys → New SSH key. Затем переключите репозиторий на SSH-адрес:
Так пароль и токен больше не понадобятся.
Работу с Git и GitHub разбирают в бесплатном курсе «Основы Git».
9 дней назад
Никита Вихров
Похожие вопросы
