Git:无法删除凭据:找不到元素

时间:2013-06-12 20:41:01

标签: windows git

我正在尝试在新机器上设置Git,而我在使用远程存储库进行身份验证时遇到了问题。

我对Git的经验有限,但我之前已成功完成以下任务:

  • 创建本地存储库($git init
  • 与远程存储库($git remote add origin https://[my remote repository]
  • 连接

到目前为止一切顺利。但是,当我尝试通过命令行或TortoiseGit与远程存储库进行交互 - 拉,克隆或推送时,在输入我的凭据时,我会收到以下错误消息:

  

无法删除凭据:找不到元素

     

致命:https://[my远程存储库

的身份验证失败

它显然似乎是某种身份验证问题 - 但是,我可以很好地登录远程仓库的Web界面,所以我确定我正在使用正确的un / pw。 我已经为Git安装了Windows Credential Store,但是它会抛出完全相同的错误消息。

谷歌没有太多帮助 - this solution似乎是Vista / 32bit特定(我是Win7 / 64bit),this SO question已被删除,让我更加聪明。

现在,我确信我的问题有一个简单的解决方案,但我一整天都没有进展。有人能给我一个指针吗?

提前致谢!

编辑: 以下是clone命令的完整结果:

  

我:\ KODE \ _Git \ myproject> git clone https:// ...

     

克隆到'myproject'......

     

“https:// ...”的用户名:myuser

     

https://myuser[at] ...”的密码:

     

致命:“https:// ...”

的身份验证失败

14 个答案:

答案 0 :(得分:13)

我在Windows中遇到了同样的错误。它发生在我更改控制面板中的凭据后 - >用户 - >管理凭据。

我通过添加新凭据修复了它:

git:https://github.com(网络凭据)以及用户名和密码。

答案 1 :(得分:6)

我在 github 时遇到了这个问题。就我而言,问题的根源是双因素身份验证。我把它变成 on ,当我把它关闭时 - 我摆脱了凭据错误。

虽然我必须保持双因素身份验证关闭,但这是一种耻辱。

答案 2 :(得分:5)

我正在使用GitExtension 2.4 6(包括msysgit 1.8.3),我遇到了同样的问题。还要恢复GitExtension 2.44的安装(使用msysgit 1.8.1.2)也无法解决问题。

经过一些测试后,我得出的结论是我的密码存在问题,导致git-credential-winstore.exe的最新版本修复了密码中“=”的问题

我的密码不包含任何 = ,但它包含§。所以我的第一个想法是更新已安装的版本git-credential-winstore.exe到最新版本1.2。我手动更新了文件并再次尝试,但没有成功。

最后我将密码更改为不包含任何特殊字符,现在可以正常使用。

答案 3 :(得分:4)

看起来远程服务器无法对您进行身份验证。

您使用的是https://网址。因此git使用https连接到远程存储库。 服务器answers与401(未授权)和您的git客户端prints上面的错误消息。

不确定,为什么服务器不喜欢你。名称/密码不正确,或者发生了一些奇怪的事情。尝试使用浏览器访问https:// URL。也许这可以让您了解服务器问题可能是什么。

您还可以尝试在网址https://name:password@...中明确指定名称/密码。 (但服务器可能仍会拒绝身份验证。)

答案 4 :(得分:3)

编辑:确认,这似乎是Git v1.8.3的一个问题 - 切换到v1.8.1.2解决了这个问题。下载here。 谢谢你的帮助!


嗯,事实恰恰相反,我的一位同事昨晚遇到了完全相同的问题,与此问题无关。

像我一样,他下载了最新的官方Git版本 - v1.8.3。他继续卸载最新版本并安装了v1.8.1.2 - 这解决了这个问题。

当我有机会并报告回来时,我会放手一搏。

答案 5 :(得分:2)

使用GitHub,如果您使用双因素身份验证和https Git,则会收到此消息。

解决方案是创建一个您使用的个人访问令牌来代替您的密码。

请参阅https://github.com/blog/1614-two-factor-authentication

答案 6 :(得分:1)

编辑:当使用anyauth和Windows身份验证激活时,似乎是一个卷曲bug /与IIS不兼容

编辑2:似乎安装msysgit 1.8.0-preview-20121022修复了问题

使用更多的版本的mssys git将失败并出现auth错误。 这可以使用curl / libcurl重新记录,curl / libcurl是http / https的基础Git提供程序。

C:\Program Files (x86)\Git\bin\curl.exe --anyauth http://user:password@server/tfs/defaultcollection/_git/repo/info/refs?service=git-receive-pack

这很好用

C:\Program Files (x86)\Git\bin\curl.exe --digest http://user:password@server/tfs/defaultcollection/_git/repo/info/refs?service=git-receive-pack

因此,禁用Windows身份验证会使git正常工作,但是您放弃其他所有内容(从VS或TFS管理控制台访问服务!)

  1. 在“tfs”节点上,激活“摘要式身份验证”并禁用其他所有内容
  2. 在“Team Foundation Server”节点上,激活“摘要式身份验证”并禁用其他所有内容
  3. 在“Team Foundation Server”节点上,执行管理网站>重新启动
  4. 之后能够推送和推送标签(来自git bash和git扩展)

    注意:我使用git 1.8.4.msysgit.0,git-credential-winstore 1.2和Git Extensions 2.47.3

    注意2:不知道是否同时启用其他类型的身份验证

    注3:未尝试使用包含=或其他“特殊”字符的密码

答案 7 :(得分:1)

在我的情况下,我不得不重新定义(禁用并再次启用)Team Foundation Server备用凭据,因为密码策略已被强化。

答案 8 :(得分:1)

如果你正在使用Windows Credential Store for Git,那么问题可能就是您正在使用错误的1.3版本。

使用以下命令解决命令问题:

cmdkey /list

列出Windows凭据存储中的当前凭据。

并手动添加您的git凭据(在这种情况下对于TFS Online,但对Github来说是相同的):

cmdkey /generic:LegacyGeneric:target=git:https://mysite.visualstudio.com /user:MyName /pass:MyPass123

我发现在执行类似git pull的操作后,我的凭据会自动删除。

安装git-credential-store v1.2为我解决了问题。请参阅:git push fails with git-credential-winstore

我还改变了我的"替代证书"我的个人资料中的密码用于我的TFS在线帐户(他们的密码政策已更改为现在需要3个不同的字符类别),如Barbara的答案所示。

答案 9 :(得分:0)

我刚才有同样的问题,但我猜原因可能有点不同。

在我的场景中,我试图使用与用于访问另一个TFS存储库相同的帐户访问新的TFS-git存储库。 我的解决方案是重新安装git-credential-winstore.exe应用程序并重新安装它。我还删除了Windows凭据管理器中存储的凭据。 链接到git凭证应用程序: http://gitcredentialstore.codeplex.com/

希望这有助于某人!

答案 10 :(得分:0)

我在使用Windows 2008(32位),Git,GitExtensions时遇到了这个问题。

尝试推送时,如果出现“用户名/密码”框提示,即使我确定使用了正确的用户名/密码,我也会收到相同的消息。

在配置原点时添加用户/密码为我解决了这个问题:

git config remote.origin.url https://user:password@bitbucket.org/username

答案 11 :(得分:0)

我最近遇到了同样的问题,那是因为我没有使用正确的网址。

不良网址https://github.com/blesh/myrepo

好网址https://github.com/blesh/myrepo.git< - .git !!!

检查您的远程网址:

git remote -v

修复远程源URL:

git remote set-url origin https://github.com/blesh/myrepo.git

一旦我这样做,一切都恢复正常。

答案 12 :(得分:0)

在我们的案例中,这是服务器的问题。我们的IT人员说git服务器无法访问身份验证服务器。

我不确定这意味着什么,但是在快速服务器退回和其他一些IT魔法之后,所有内容都得到了及时修复。

答案 13 :(得分:0)

我也遇到了这个错误。解决此问题的唯一方法是在凭据下的visualstudio.com配置文件中创建辅助凭据。使用带有git扩展的辅助凭证修复了错误。