我正在使用几个存储库,但最近我只在我们的内部存储库中工作,一切都很好。

今天我不得不提交并将代码推到另一个,但我遇到了一些麻烦。

$ 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配置——global——unset core.askpass

以便取消设置密码

Git配置凭证。Helper '缓存超时=1'

为了避免凭证缓存…

似乎什么都不管用;谁有更好的主意?


当前回答

在我的情况下,我找不到保存在Windows凭证管理器(Windows 7)中的凭据。

我可以通过执行重置我的凭证

git config --global credential.helper wincred

老实说,这是孤注一掷,看看它是否会抹掉我的证书,而且它真的起作用了。

其他回答

最终为我解决这个问题的是使用GitHub桌面,进入存储库设置,并从存储库url中删除user:pass@。然后,我尝试从命令行推送,并提示输入登录凭据。我把它们放进去之后,一切都恢复正常了。Visual Studio和命令行都可以工作,当然还有GitHub桌面。

GitHub Desktop->Repository->Repository Settings->Remote选项卡

将主远程存储库(origin)更改为:

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

To:

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

点击“保存”

凭证将被清除。

如果您使用密钥对进行身份验证,则可以删除或移动您的私有密钥,或者停止密钥代理并尝试。

如果你的凭据存储在凭据助手中(通常情况下),移除特定主机的密码持久化的可移植方法是调用git credential reject:

一句话: $ echo "url=https://appharbor.com" | git证书拒绝 或交互: $ git凭证拒绝 = https协议 主机= gitlab.com 用户名= me@example.com ↵ (是回车符号),在输入结束时按两次回车键,不要复制/粘贴 wincred似乎无法识别用户名,因此避免在Windows上通过用户名进行过滤

然后,输入git fetch来输入新密码。

https://git-scm.com/docs/git-credential

如果使用Git凭据管理器for Windows(当前版本通常使用):

git credential-manager clear

这是在2016年年中增加的。检查是否使用了凭据管理器。

git config --global credential.helper
→ manager

Git凭据缓存运行一个守护进程,该进程将您的凭据缓存到内存中,并根据需要分发它们。因此,如果您继续使用git-credential-cache- daemon作为缓存,那么终止git-credential-cache- daemon进程将丢弃所有这些,并导致重新提示您输入密码。辅助选项。

你也可以使用Git config——global——unset credential.helper禁用Git凭据缓存。然后重新设置,您将继续拥有缓存的凭据,可用于其他存储库(如果有的话)。你可能还需要执行git config——system——unset credential命令。如果在系统配置文件(例如,Windows 2的Git)中已经设置了helper。

On Windows you might be better off using the manager helper (git config --global credential.helper manager). This stores your credentials in the Windows credential store which has a Control Panel interface where you can delete or edit your stored credentials. With this store, your details are secured by your Windows login and can persist over multiple sessions. The manager helper included in Git for Windows 2.x has replaced the earlier wincred helper that was added in Git for Windows 1.8.1.1. A similar helper called winstore is also available online and was used with GitExtensions as it offers a more GUI driven interface. The manager helper offers the same GUI interface as winstore.

从Windows 10支持页面提取详细的Windows凭据管理器:

要打开凭据管理器,请在任务栏上的搜索框中输入“凭据管理器”,然后选择凭据管理器控制面板。

然后选择Windows凭证来编辑(=删除或修改)存储的给定URL的git凭证。