我正在使用几个存储库,但最近我只在我们的内部存储库中工作,一切都很好。
今天我不得不提交并将代码推到另一个,但我遇到了一些麻烦。
$ 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'
为了避免凭证缓存…
似乎什么都不管用;谁有更好的主意?
实际上useHttpPath是一个git配置,它应该适用于所有gcm。纠正。
原题摘要
在Windows上使用git
在GitHub上开发多个存储库
用于另一个GitHub存储库的错误凭据
虽然标题说“删除凭据”,但描述让我假设你可能在GitHub上有多个帐户,例如用于与工作相关的或私人项目。(至少那期杂志让我找到了这个话题。)
如果是这样,继续读下去,否则,忽略这个答案,但它在某些时候可能会派上用场。
原因
Git凭据管理器(简称GCM),就像微软的GCM一样,默认情况下为每个主机存储凭据。
这可以通过检查Windows凭据管理器来验证(参见关于如何在英语、法语和德语Windows版本上访问它的其他答案)。
因此,在同一主机上使用多个帐户(这里是github.com)在默认情况下是不可能的。
2020年10月,Windows版GCM已弃用,并被GCM Core所取代。这里的信息仍然适用于新的GCM,它甚至应该使用GCM为Windows存储的凭证。
解决方案
配置git以包含存储库的完整路径,作为每个凭据条目的附加信息。在Windows的GCM中也有文档。
我个人更喜欢包含HTTP(S)[存储库]路径,以便能够为每个存储库使用单独的帐户。
对于所有可能的主机:
git config --global credential.useHttpPath true
仅适用于github.com:
git config --global credential.github.com.useHttpPath true
看看GCM和git文档,也许你想指定一些不同的东西。
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凭证。