你如何重置“git凭证-osxkeychain”中存储的凭据?
我已经按照GitHub的说明build立了我的帐户,而且我可以克隆,但是我无法远程推送。
当我做一个“混帐推”我得到了403错误。 它有正确的url。 我尝试了一个“git凭证 – osxkeychain get”来看看它给了什么,并打印出错误的凭据。
我相信发生了什么事是第一次要求证书,我以为是另一个应用程序问,而且是错误的。
我只需要重置它,以便它为我的GitHub帐户使用正确的钥匙串项目。
我试过了:
git credential-osxkeychain erase git credential-osxkeychain set
程序从不给出任何提示。 如果我没有做正确的事情,套将会说“不好的input”。 我试着把“ password=password
”等,但是当我做一个“得到”我仍然得到旧的。
我不知道这些存储在哪里,因为它们不在.gitconfigure中。 此外,最近没有可能的钥匙串项目。 (我的钥匙串中有几个GitHub帐户,并没有使用它们中的任何一个。)
我不知道如何通过命令行擦除,但通过Keychain Access应用程序很容易。 只需进入应用程序 – > Utilities – > Keychain Access,然后input“github.com”。 您可以删除无效的项目或从应用程序更新密码。
从docker:
$ git credential-osxkeychain erase host=github.com protocol=https <press return>
解决scheme原来是这样的:
命令git credential-osxkeychain
正在使用我的钥匙串中的第一个 GitHub帐户条目。 这个人不是那个可以访问这个项目的人。
我通过触摸Keychain Access中的帐号来解决问题,使其date改变(我想我只是改变了注释),现在它成为最近的GitHub帐号,成为第一个返回到credential-osxkeychain的帐号,因此一切正常。
对多个GitHub账户的更好的支持forms将是很好的,但很可能大多数人只有一个主账户,不会遇到这个问题。
git-credential-osxkeychain将密码存储在Apple Keychain中,如上所述。
默认情况下,gitcredentials只考虑域名。 如果你希望Git考虑完整path(例如,如果你有多个GitHub帐户),请将useHttpPath
variables设置为true
,如http://git-scm.com/docs/gitcredentials.html中所述; 。 请注意,更改此设置将为每个url重新提示您的凭据。
这个问题的GitHub帮助页面: https : //help.github.com/articles/updating-credentials-from-the-osx-keychain/
尝试运行/Applications/Utilities/Keychain Access
。
在Mac上,使用命令git credential-osxkeychain erase
。
或者从应用程序 → 实用程序 → 钥匙串访问中手动从钥匙串中删除。 然后删除github.com钥匙串。 然后用推; 它会要求钥匙串访问; 然后否认。
它会要求新的用户名和密码,添加它,然后推送一个文件。
后git push
我发现这个错误。 然后我使用大写的问题:
远程:user1 / file.git的权限被拒绝给user2(以前存在的用户)。 致命:无法访问“ https://github.com/xxxxxxxxxxxx/ ”:请求的URL返回错误:403