Удаление учетных данных из Git


Я работаю с несколькими репозиториями, но в последнее время я просто работал в нашем внутреннем, и все было здорово.

сегодня мне пришлось совершить и нажать код в другой, но у меня возникли некоторые проблемы.

$ git push appharbor master
error: The requested URL returned error: 403 while accessing https://gavekortet@appharbor.com/mitivo.git/info/refs?service=git-receive-pack
fatal: HTTP request failed

Я ничего не могу сделать, чтобы снова ввести пароль.

как я могу сбросить учетные данные в моей системе, чтобы Git попросил меня ввести пароль этого репозитория?

у меня есть пробовал:

  • git config --global --unset core.askpass

для того чтобы сбросить пароль

  • git config credential.helper 'cache --timeout=1'

во избежание кэширования учетных данных...

кажется, ничего не работает; у кого-нибудь есть идея получше?

21 295

21 ответ:

кэш учетных данных Git запускает процесс демона, который кэширует ваши учетные данные в памяти и передает их по требованию. Поэтому убийство вашего процесса git-credential-cache-daemon отбрасывает все это и приводит к повторному запросу вашего пароля, если вы продолжаете использовать его в качестве кэша.вспомогательный вариант.

вы также можете отключить использование кэша учетных данных Git с помощью git config --global --unset credential.helper. Затем сбросьте это, и вы продолжите иметь кэшированные учетные данные, доступные для других репозитории (если таковые имеются). Вы также можете сделать git config --system --unset credential.helper если это было задано в файле конфигурации системы (например, Git для Windows 2).

В Windows вам может быть лучше использовать менеджер helper (git config --global credential.helper manager). При этом учетные данные хранятся в хранилище учетных данных Windows, которое имеет интерфейс панели управления, где можно удалить или изменить сохраненные учетные данные. В этом магазине ваши данные защищены вашим логином Windows и могут сохраняться в течение нескольких проведение сессий. Элемент менеджер помощник включен в Git для Windows 2.x заменил предыдущий wincred помощник, который был добавлен в Git для Windows 1.8.1.1. Подобный помощник называется winstore также доступен в интернете и использовался с GitExtensions, поскольку он предлагает более графический интерфейс. Элемент менеджер помощник предлагает тот же интерфейс GUI, что и winstore.

выписка из руководство Windows подробно Панель хранилища учетных данных Windows:

откройте учетные записи пользователей, щелкнув изображение кнопки Пуск кнопки Пуск, щелкнув Панель управления, щелкнув учетные записи пользователей и безопасность семьи (или щелкнув учетные записи пользователей, если вы подключены к сетевому домену), а затем щелкнув учетные записи пользователей. В левой области щелкните Управление учетными данными.

Если эта проблема возникает на компьютере под управлением Windows, выполните следующие действия.

  • перейти к менеджеру учетных данных
  • перейти к учетным данным Windows
  • удалите записи под общими учетными данными
  • попробуйте подключиться еще раз. На этот раз он должен запросить у вас правильное имя пользователя и пароль.

Go to Credential Manager

Go to Windows Credentials and Delete the entries under Generic Credentials

введите:

$ git config credential.helper store

и затем вам будет предложено снова ввести свои учетные данные.

предупреждение

используя этот помощник будет хранить ваши пароли в незашифрованном виде на диске

источник:https://git-scm.com/docs/git-credential-store

я столкнулся с той же проблемой, что и OP. он принимал мои старые учетные данные Git, хранящиеся где-то в системе, и я хотел использовать Git с моими новыми учетными данными, поэтому я запустил команду

$ git config --system --list

Он показал

credential.helper=manager

всякий раз, когда я выполнял git push он брал мое старое имя пользователя, которое я давно установил, и я хотел использовать новую учетную запись GitHub для внесения изменений. Позже я обнаружил, что мои старые учетные данные учетной записи GitHub были сохранены под Панель УправленияУчетные Записи ПользователейДиспетчер Учетных ДанныхУправление Учетными Данными Windows.

Manage Windows Credentials

Я просто удалил эти учетные данные и когда я выполнил git push он попросил у меня мои учетные данные GitHub, и это сработало как шарм.

попробуйте использовать следующую команду.

git credential-manager

здесь вы можете получить различные варианты для управления ваши учетные данные (см. ниже).

Enter image description here

или вы можете даже непосредственно попробовать эту команду:

git credential-manager uninstall

это снова начнет запрашивать пароли для каждого запроса на взаимодействие с сервером.

в моем случае Git использует Windows для хранения учетных данных.

все, что вам нужно сделать, это удалить сохраненные учетные данные, хранящиеся в вашей учетной записи Windows:

Windows credentials menu

Я нашел то, что работал для меня. Когда я написал свой комментарий к OP, я не смог проверить файл конфигурации системы:

git config --system -l

показывает a

credential.helper=!github --credentials

линии. Я снимаю его с

git config --system --unset credential.helper

и теперь учетные данные будут забыты.

git config --list

покажет credential.helper = manager (это на машине windows)

чтобы отключить это кэшированное имя пользователя / пароль для текущей локальной папки git, просто введите

git config credential.helper ""

таким образом, git будет запрашивать пароль каждый раз, игнорируя то, что сохраняется внутри "менеджер".

необходимо войти в систему с соответствующим github username и password

чтобы очистить имя пользователя и пароль в windows

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

редактировать учетные данные windows

удалите существующего пользователя и теперь перейдите в командную строку напишите команду push, которая показывает всплывающее окно github, чтобы ввести username/email и password .

теперь мы можем нажать кода после переключение пользователей.

В Windows 2003 Server с "wincred"*, ни один из других ответов не помог мне. Я должен был использовать cmdkey.

  • cmdkey /list перечисляет все сохраненные учетные данные.
  • cmdkey /delete:Target удаляет учетные данные с именем "Target".

cmdkey /list; cmdkey /delete:Target

(*под "wincred" я имею в виду git config --global credential.helper wincred)

удалить эту строку из вашего .файл gitconfig, расположенный в текущей папке пользователя Windows:

[credential]
helper = !\"C:/Program Files (x86)/GitExtensions/GitCredentialWinStore/git-credential-winstore.exe\"

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

Вы можете удалить строку credential.helper=!github --credentials из файла C:\Program Files\Git\mingw64\etc\gitconfig чтобы удалить учетные данные для git

в случае Git Credential Manager for Windows используется (что обычно делают текущие версии):

git credential-manager clear

Это добавлено в середине 2016 года. Чтобы проверить, используется ли диспетчер учетных данных:

git config --global credential.helper
→ manager

в моем случае я не смог найти учетные данные, сохраненные в Диспетчере учетных данных Windows (Windows 7).

я смог сбросить свои учетные данные, выполнив

git config --global credential.helper wincred

Это был честно град Мэри, чтобы увидеть, если это уничтожит мои полномочия, и это действительно сработало.

  1. на C:\Users\<current-user>
  2. проверить .git-credentials file
  3. удалить содержимое или изменить в соответствии с вашим требованием
  4. перезагрузите терминал

в нашем случае, очистка пароля пользователя .файл git-credentials работал для нас.

c:\users\[username]\.git-credentials

вы должны обновить его в Диспетчере учетных данных.

перейдите в Панель управления > Учетные записи пользователей > диспетчер учетных данных > учетные данные Windows. Вы увидите учетные данные Git в списке (например, git:https://). Нажмите на него, обновите пароль и выполните команду git pull/push из вашего Git bash, и он не будет выдавать больше сообщений об ошибках.

что, наконец, исправило это для меня, так это использовать рабочий стол GitHub, перейти к настройкам репозитория и удалить user:pass@ из url-адреса репозитория. Затем я попытался нажать из командной строки и получил запрос на ввод учетных данных. После того, как я положил их, все вернулось к норме. И Visual Studio, и командная строка работают, и, конечно же, GitHub desktop.

гитхаб рабочего стола->хранилище->настройки->репозитории вкладку удаленное использование

изменить Основной удаленный репозиторий (источник) от кого:

https://pork@muffins@github.com/MyProject/MyProject.git

To:

https://github.com/MyProject/MyProject.git

Нажать Кнопку "Сохранить"

учетные данные будут очищены.

используя последнюю версию git для Windows на Windows 10 Professional, и у меня была аналогичная проблема, когда у меня есть две разные учетные записи GitHub, а также учетная запись Bitbucket, поэтому все немного запуталось для VS2017, расширений git и Git bash.

Я сначала проверил, как git обрабатывал мои учетные данные с помощью этой команды (запустите git bash с повышенными командами или вы получите ошибки):

git config --list

Я нашел менеджер учетных данных входа, поэтому я нажал на кнопку Пуск > набрал Диспетчер учетных данных и щелкните левой кнопкой мыши на значке credential manager yell safe, который запустил приложение. Затем я нажал на вкладки учетных данных Windows и нашел запись для моей текущей учетной записи git, которая оказалась Bitbucket, поэтому я удалил эту учетную запись.

но это не помогло, поэтому следующим шагом было отменить учетные данные, и я сделал это из каталога репозитория на своем ноутбуке, который содержит проект GitHub, который я пытаюсь нажать на пульт дистанционного управления. Я набрал следующее команда:

git config --system --unset credential.helper

затем я сделал git push, и мне было предложено ввести имя пользователя GitHub, которое я ввел (правильный, который мне нужен), а затем связанный пароль, и все было правильно нажато.

Я не уверен, насколько это проблема, большинство людей, вероятно, работают с одним РЕПО, но я должен работать через несколько и использовать разных поставщиков, поэтому может возникнуть эта проблема снова.

получил ту же ошибку при выполнении "git pull", и вот как я ее исправил.

  1. изменить РЕПО на HTTPS
  2. выполнить команду ' git config --system --unset credential.помощник'
  3. выполнить команду ' git config --system --add credential.helpder manager'
  4. тестовая команда 'git pull'
  5. введите учетные данные в открывшемся окне входа.
  6. git pull успешно завершен.

Если вы аутентифицируетесь с помощью пары ключей, вы можете удалить или переместить свой закрытый ключ, или остановить агента ключей и попробовать.