Получение фатального исхода: сбой аутентификации - ошибка при отправке команд git в Windows 10

После обновления пароля домена доступ к git-repo больше невозможен. Код VS и исходное дерево, а также Visual Studio возвращают следующее сообщение об ошибке при извлечении, отправке, извлечении и т. д.

fatal: Authentication failed

Обычно должно появиться всплывающее окно с учетными данными, однако этого не происходит. Также общая рекомендация...

git config --global credential.helper wincred

...не работает.


person Jesper Wilfing    schedule 16.03.2017    source источник
comment
Связанный пост - Неустранимая ошибка Git: сбой аутентификации   -  person RBT    schedule 11.02.2019


Ответы (10)


Пароль хранится в диспетчере учетных данных Windows и требует обновления. Откройте командную строку и введите следующую команду, чтобы просмотреть список сохраненных паролей:

rundll32.exe keymgr.dll,KRShowKeyMgr

Прокрутите список вниз, пока не найдете записи, связанные с git. Нажмите на нее и измените правильный пароль.

Вуаля!

«Windows

person Jesper Wilfing    schedule 16.03.2017
comment
в отличие от использования Панели управления\Учетных записей пользователей\Диспетчера учетных данных, как предлагает любой другой ответ в Интернете, это сработало для меня - person Andrey; 08.11.2018
comment
У меня работает, но по какой-то причине пароль возвращается к старому через несколько минут. Так что я должен выполнять это каждый раз, когда я хочу нажать. Есть идеи, почему это так? - person iko79; 13.05.2019
comment
Я не могу открыть диспетчер учетных данных из-за политики компьютера. Но эта команда исправила мою проблему. Большое спасибо! - person gkonuralp; 29.05.2019
comment
помогло мне на Win 10, но только после полного удаления - person Vitaly Leskiv; 09.11.2020
comment
@ iko79 Я обнаружил такое же поведение (возврат после выполнения 1 или 2 команд). Решение, похоже, заключалось в том, чтобы удалить учетные данные вместо их редактирования. Затем, когда я в следующий раз запустил команду git, мне было предложено, и она застряла без замены. - person Michael Lucas; 26.03.2021
comment
Для пользователей в DevOps вместо пароля используется токен доступа. Просто полностью удалите учетные данные, и вам будет предложено войти в систему, а новый PAT будет сохранен с соответствующим доступом. - person Kyle Burkett; 17.06.2021
comment
@iko79 то же самое для меня. Ответ Митендры относительно CredentialsManager stackoverflow.com/a/64209332/521754 является более чистым/постоянным решением, а не обходным путем, который Майкл Лукас предлагает в комментариях. Выбрал ответ Митендры, так как он был первым, данным в Credentials Manager. - person despot; 30.06.2021

Я согласен с Джеспером, другой способ сделать это - в windows, если вы можете перейти к:

Панель управления\Учетные записи пользователей\Диспетчер учетных данных

На странице «Учетные данные Windows\Windows Vault» на странице «Общие учетные данные» вы можете обновить пароль существующей записи GIT или добавить новые общие учетные данные.

Обновленный ответ для пользователей Mac:

В случае, если вы находитесь здесь с аналогичной проблемой на Mac, вы можете сделать то же самое в keychain access - удалив существующую запись GIT, а затем, если вы снова передадите свои учетные данные в git bash или любой другой инструмент, будет создана новая запись, все должно сработать.

person whoami - fakeFaceTrueSoul    schedule 01.10.2018
comment
Или, если у вас возникли проблемы при клонировании репозитория GIT, размещенного на Azure DevOps, проверьте следующее: stackoverflow.com/questions/34837173/ - person whoami - fakeFaceTrueSoul; 25.09.2020

Попробуйте следующее:

  1. Нажмите Пуск
  2. Тип: диспетчер учетных данных
  3. См. ярлык диспетчера учетных данных Windows и дважды щелкните его, чтобы открыть приложение.
  4. Когда приложение открыто, нажмите на вкладку «Учетные данные Windows».
  5. Найдите учетные данные, которые вы хотите удалить, они будут начинаться с «git:» и могут начинаться с «ada:».
  6. Нажмите на запись учетных данных, откроется подробный вид записи.
  7. Нажмите «Удалить» и подтвердите удаление при появлении запроса.
person Mitendra    schedule 18.07.2019

У меня возникла аналогичная проблема с Windows 10, и вот как я ее решил:

  1. В поиске Windows введите Credential Manager:

введите здесь описание изображения

  1. Откройте диспетчер учетных данных и перейдите на вкладку учетных данных Windows: введите здесь описание изображения

  2. Вы должны увидеть запись для учетных данных git в диспетчере учетных данных Windows: введите здесь описание изображения

Вот основная причина: эти учетные данные git локально кэшируются/сохраняются на вашем локальном компьютере, и, поскольку мы изменили наш пароль Active Directory, в настоящее время он не синхронизирован.

  1. Нажмите Изменить и измените его на новый/измененный пароль Active Directory (этот пароль должен совпадать с вашим новым/измененным паролем Active Directory): введите здесь описание изображения

Примечание. Это касается использования git только с https, а не для SSH: https://docs.github.com/en/free-pro-team@latest/github/using-git/what-remote-url-should-i-use

  1. Сохраните, должно работать (не требует перезагрузки терминала или машины).

Наконец, если у вас нет доступа к диспетчеру учетных данных (из-за политики администратора/безопасности), вы можете заставить git запрашивать пароль, выполнив git pull из определенного репо, используя URL-адрес репо на основе имени пользователя, например

git pull https://{yourgitusername}@{gitrepo}.git

введите здесь описание изображения

Обратите внимание, что это зависит от репо, поэтому вам придется делать это для каждого репо.

Удачи.

person Maksood    schedule 05.10.2020

Я столкнулся с той же проблемой, и ни одно из вышеупомянутых решений не сработало. Наконец, я просто удалил git for windows и переустановил то же самое без credential managers. Это решило проблему аутентификации с git.

person Sitesh    schedule 10.09.2020
comment
Это сработало и для меня. Другие рекомендации не сделали. - person oyesil; 21.04.2021

У меня ничего не сработало, даже удалить git и переустановить. Что сработало для меня, так это создать токен личного доступа из вашей учетной записи github и использовать его в качестве пароля. На этой странице подробно описаны процедуры: https://medium.com/@ginnyfahs/github-error-authentication-failed-from-command-line-3a545bfd0ca8

person Tech    schedule 05.10.2020

Использование Git для Windows (2.30.0) с межплатформенным менеджером учетных данных, с удаленным, установленным в качестве https-адреса GitHub, для общедоступного репозитория, выполнение git push само по себе было недостаточным.

Вместо этого мне пришлось явно выполнить git push origin main (заменить main на master или любую другую ветку), чтобы Git для Windows загрузил страницу аутентификации GitHub, где я мог авторизовать приложение.

Создание токена личного доступа, как отмечено в другом ответе, не требовалось. Учетные данные Windows отсутствовали в диспетчере учетных данных Windows, но были добавлены как общие учетные данные Windows с помощью этого метода.

person James Skemp    schedule 02.01.2021
comment
Это сработало для меня! После авторизации на странице GitHub можно ли просто использовать git push? - person Breno; 06.07.2021
comment
Рад, что это помогло! Да, после использования более длинной версии и завершения авторизации обычный git push должен работать. - person James Skemp; 07.07.2021

У меня была такая же проблема при клонировании репозитория с помощью кода Bash/VS с «fatal: Authentication failed». Вместо этого я использовал аутентификацию по ключу SSH для подключения моего репозитория в соответствии со статьей: [https://docs.microsoft.com/en-us/azure/devops/repos/git/use-ssh-keys-to-authentication?view=azure-devops&tabs=current-page][1] Я не получил никаких ошибок ни с какими командами bash!

Приведенное выше решение работает, только если ваша машина поддерживает SSH.

person Kiran Modini    schedule 19.02.2020
comment
Это относится к репозиториям GIT на Azure DevOps: проверьте это :: stackoverflow.com/questions/34837173/ - person whoami - fakeFaceTrueSoul; 25.09.2020

Попробуйте вручную удалить настройку

credential.helper=wincred из

C:\Users\<YOUR LOGIN>\.gitconfig файл это там.

Мне помогло после смены пароля в LDAP. Команда изменить настройку не помогла.

person Maxim Korobov    schedule 11.06.2021

Единственное, что сработало для меня, это remove the remote и добавить его обратно. Я попытался удалить учетные данные и даже переустановить последнюю версию git. Но предлагаемый способ доступа к удаленным репозиториям из Github и Microsoft DevOps — использование общего ключа.

person Mudasar Rauf    schedule 27.09.2020