如何在'git credential-osxkeychain'中重置存储的凭据?

nir*_*ana 86 git macos github

我已经按照GitHub说明设置了我的帐户,我可以克隆,但我无法远程推送.

当我执行"git push"时,我收到403错误.它具有正确的URL.我尝试了一个"git credential-osxkeychain get"来查看它给出的内容,并打印出错误的凭据.

我相信发生的事情是它第一次要求凭据,我认为这是另一个应用程序要求,并且它将错误的应用程序放入其中.

我只需要重置它,以便它为我的GitHub帐户使用正确的钥匙串项.

我试过了:

git credential-osxkeychain erase
git credential-osxkeychain set
Run Code Online (Sandbox Code Playgroud)

该程序从不给出任何提示.如果我不做正确的话,Set会说"输入错误".我尝试输入" password=password"等,但是当我做"获取"时,我仍然得到旧的.

我无法弄清楚这些存储的位置,因为它们不在.gitconfigure中.此外,最近没有钥匙链项目可能是它.(我的钥匙串中有几个GitHub帐户,它没有使用任何帐户.)

maz*_*maz 97

从航站楼:

 $ git credential-osxkeychain erase
 host=github.com
 protocol=https
 <press return>
Run Code Online (Sandbox Code Playgroud)

注意:输入上面的"protocol = https"后,你需要按~~ RETURN ~~ TWICE

  • 伟大的它也与git凭据Wincred擦除 (2认同)
  • 出于某种原因,我在Keychain应用程序中找不到任何Git/GitHub凭据,但这有效.谢谢! (2认同)
  • 由于这对我来说还不清楚:您必须在上方输入所有3行,然后再次按回车键-即,上方2/3行不是从命令输出,而是输入。 (2认同)
  • @Ojasvsingh 它会从您的钥匙串中删除 github.com 条目。这意味着下次您尝试连接时,将检测到不再有条目。这意味着系统将提示您输入 github.com 的当前凭据 (2认同)

ben*_*ado 63

我不确定如何擦除命令行,但通过Keychain Access应用程序可以很容易地完成.只需转到Applications - > Utilties - > Keychain Access,然后输入"github.com".您可以删除无效项目或使用应用程序更新密码.

  • 如果有人在阅读此文章时会从命令行中了解如何操作,那将很高兴知道. (4认同)

nir*_*ana 26

解决方案原来是这样的:

该命令git credential-osxkeychain使用了我的钥匙串中的第一个 GitHub帐户条目.这个人不是那个可以访问有关项目的人.

我通过触摸Keychain Access中的帐户来解决问题,以便更改日期(我想我刚刚更改了评论),现在它成为最新的GitHub帐户,它成为第一个返回到凭证-osxkeychain的帐户,因此一切正常.

对多个GitHub帐户提供更好的支持形式会很好,但很可能大多数人只有一个主帐户,并且不会遇到这个问题.

  • 我不确定这对于同一主机上的多个用户是如何工作的,但是您可能会检查ssh并使用`〜/ .ssh/config`文件而不是使用OSX Keychain.这适用于您可能有多个ssh密钥用于不同主机(以及思考帐户)的情况.http://nerderati.com/2011/03/17/simplify-your-life-with-an-ssh-config-file/ (2认同)

Mac*_*eek 10

如上所述,git-credential-osxkeychain将密码存储在Apple Keychain中.

默认情况下,gitcredentials仅考虑域名.如果您希望Git考虑完整路径(例如,如果您有多个GitHub帐户),请将useHttpPath变量设置为true,如http://git-scm.com/docs/gitcredentials.html中所述.请注意,更改此设置将再次针对每个URL询问您的凭据.


inv*_*ffi 8

在命令行中试试这个。

git config --local credential.helper ""

每当我在 OSX 钥匙串中有多个 GitHub 帐户时,它都对我有用

  • 重置密码后,对于 mac,运行 `git config --local credential.helper "osxkeychain"` 会重新启用凭证助手,这样 git 就不会继续询问密码了 (5认同)

小智 6

您可以删除现有凭据并通过“钥匙串访问”添加新凭据

图像

参考号 https://docs.github.com/en/github/getting-started-with-github/updating-credentials-from-the-macos-keychain


ech*_*son 5

试试跑步/Applications/Utilities/Keychain Access.


Ami*_*mar 5

在Mac上,使用该命令git credential-osxkeychain erase.

或者从应用程序实用程序钥匙串访问中手动从钥匙串中删除.然后删除github.com钥匙串.然后用push; 它会要求钥匙串访问; 然后否认.

它会询问新的用户名和密码,添加它然后推送一个文件.

之后git push,我发现这个错误.然后我使用大写问题:

remote:user1/file.git的权限被拒绝给user2(以前存在的用户).致命:无法访问' https://github.com/xxxxxxxxxxxx/ ':请求的URL返回错误:403


归档时间:

查看次数:

132341 次

最近记录:

7 年 前