Git错误致命:身份验证失败

时间:2016-03-06 23:55:12

标签: git azure-devops

我正在尝试使用git将我的存储库推送到visual studio团队服务项目,但是我收到了错误:

git remote add origin
     https://XXXXXXX.visualstudio.com/DefaultCollection/_git/project

git push -u origin -–all

我正在使用cmds:

var_dump($my_tweets);

对此有何解决方法?

谢谢!

21 个答案:

答案 0 :(得分:50)

我最近遇到了一个相同的问题(Visual Studio 2017和Windows 10),并使用以下方法解决了该问题:

控制面板->凭据管理器->管理Windows凭据->选择git存储库的条目,然后编辑用户和密码。

完成。

答案 1 :(得分:30)

如果您希望使用GIT CLI而不与Visual Studio中的GIT包装器中的构建进行交互,则需要启用 备用身份验证凭据

如何?

Open your account (VS Online account) 
-> click on your name on the top right 
-> My Profile
-> Credentials.

并进行设置。

enter image description here

enter image description here

答案 2 :(得分:11)

今天最好的选择是安装支持VSO,GitHub的https://github.com/Microsoft/Git-Credential-Manager-for-Windows并且每个月都在改进。

答案 3 :(得分:4)

对于不能使用Microsoft Credential Manager的Linux用户。这是除了使用ssh之外我发现的唯一解决方案。您需要在存储库视图中生成凭据(请参见下图) get git credentials

结果是: get Git credentials result

复制密码!。 Azure devops不存储它,您将无法再次看到它!

注意:自2020年起,备用凭据已被禁用check Microsoft blog

答案 4 :(得分:3)

删除'.git / config'并重试。注意这也可能会重置一些git设置!

我使用正确的凭据多次尝试过替代凭据和个人访问令牌,它一直告诉我“致命:身份验证失败”。

最后,我发现在我的Repo的根目录下有一个名为“.git / config”的文件。我删除了这个文件并再次输入我的凭证,它有效。

答案 5 :(得分:3)

使用VSTS的网址是,当您从vsts复制git clone网址时,您始终会获得

https:// 组织名称 @ dev.azure.com / org / project / _git / repo

用您在 VSTS->配置文件->安全性中创建的备用用户名替换 orgname @

最终git网址-

https:// 备用用户名 @ dev.azure.com / org / project / _git / repo

答案 6 :(得分:2)

我在尝试将更改从VS2017推送到VSTS Git存储库时突然开始收到此错误。这个功能在前一天发挥作用。

我检查了我的git.log文件并看到了一个不同的例外: -

  

19:43:57.116665 ... zureAuthority.cs:184 trace:[ValidateCredentials]服务器返回:'无法连接到远程服务器。

我从Gits Credential Manager repo下载了最新的Git CredentialManager源并对其进行了调试。

经过身份验证后,发生以下异常: -

  

无法建立连接,因为目标计算机主动拒绝了它127.0.0.1:8888

然后我意识到我最近根据文章capturing-traffic-from-.net-services-with-fiddler设置了Fiddler作为所有服务的代理

一旦我跑完Fiddler,我就能成功连接。

答案 7 :(得分:2)

控制面板->凭据管理器->管理Windows凭据->选择git存储库的条目,然后编辑用户和密码。删除“。 git / config”,然后重试。注意,这也可能会重置一些git设置!

答案 8 :(得分:2)

转到Windows凭据管理器并更新GIT的凭据。

答案 9 :(得分:1)

我尝试了很多选择,但是对我有用的是:

  1. 从其Releases部分下载Git密码管理器

  2. 尝试执行简单的git fetch,它将自动带该窗口(例如,替代默认窗口之一),并要求输入用户名和密码,但比标准窗口更优雅。

正确输入凭据后,它可以工作,尽管之前我遇到了错误。

P.S。如果收到“错误的凭据”错误,请始终检查存储库用户名密码是否正确。如果您犹豫不决,只需重置密码,然后尝试在Git密码管理器窗口中使用相同的密码即可。

答案 10 :(得分:1)

我使用的是 Azure Personal Access Token,所以我的解决步骤是:

  1. 创建一个新密码 (PAT) 并复制生成的密码。
  2. 转到控制面板 -> Windows 凭据管理器
  3. 搜索那些 git url:git:https://dev.azure.com/{site}git:https://{site}@dev.azure.com/{site}(在您的情况下,这两个 url 可能不同,但它们应该以“git:”开头)
  4. 在这两个凭据中,将用户编辑为“PersonalAccessToken”并粘贴您之前生成的 PAT 的密码。

这解决了我的问题。

希望这对某人有所帮助!

答案 11 :(得分:1)

我也遇到过同样的问题。错误输出窗口如下所示: authentication failed Image

按照以下步骤解决了该问题:

  1. 转到控制面板->凭据管理器-> Windows凭据
  2. 在“通用凭据”下,选择git和update密码的条目。

    solution window

  3. 密码应与Windows(系统)登录密码相同。

答案 12 :(得分:1)

我遇到了这个问题,微软的技术人员为我解决了这个问题:

  • 关闭所有Visual Studio实例。
  • 打开任务管理器,并检查是否正在运行任何TFS服务。选择它们中的每一个,然后单击“结束进程树”。
  • 浏览到以下文件夹,然后删除%LocalAppData%\ Microsoft \ Team Foundation {version} \ Cache
  • 中的所有内容和文件夹
  • 转到控制面板->用户帐户->管理您的凭据-> Windows凭据,选择VSTS URL将其删除
  • 然后转到“ C:\ Users \ USER NAME \ AppData \ Local \ GitCredentialManager \ tenant.cache”并将其删除
  • 也转到“ C:\ Users \ USER NAME \ AppData \ Local.IdentityService”并将其删除

答案 13 :(得分:0)

我所需要的只是正确的凭据。在部署到Web应用程序时,我必须转到部署中心,部署凭据。然后使用“应用程序凭据”或创建“用户凭据”。此后,删除本地计算机上的缓存凭据(窗口:控制面板\用户帐户\凭据管理器)。再次运行“ git push webapp master:master”,输入任意一个部署凭据。这对我有用。

答案 14 :(得分:0)

如果您在Visual Studio弹出窗口中输入凭据,则可能会看到一条错误消息,提示“登录不成功”。但是,事实可能并非如此。 Studio将打开一个浏览器窗口,说它实际上已经成功。然后,浏览器和Studio之间会发生跳舞,您需要在某些位置接受/允许身份验证。

答案 15 :(得分:0)

在尝试使用git身份验证和azure devops服务器并尝试其他答案之后,本技巧here对我有用。

使用Visual Studio吗? Team Explorer使用Azure处理身份验证 回购给您。

一旦我使用Team Explorer连接到仓库,我就可以使用命令行执行git命令。

答案 16 :(得分:0)

设置2到5分钟!

  • 创建您的SSH密钥(〜/ .ssh /)

ssh-keygen -C "jamal@fabrikam.com"

  • 将公钥添加到Azure DevOps Services / TFS
  • 使用SSH克隆Git存储库

Source

答案 17 :(得分:0)

如果您使用的是Windows以外的其他软件,并且老板强迫您使用azure devops,并且您不想使用SSH,并且希望使用简单的旧方法,请执行以下操作。

>

您必须启用“备用凭据”(我知道这很烦人),或者您需要创建访问令牌。在这种情况下,创建访问令牌更像是临时随机密码。如果您使用Windows工具,那就为您完成了。

无论如何,请转到右上角的个人资料上下文菜单中的Security

Security settings

然后,如果具有管理员权限的老板/经理/花花公子对您有利,则启用“备用凭据”。否则,请接受您的命运并生成一个“个人访问令牌”。

Security settings

答案 18 :(得分:-1)

我遇到了同样的问题,我尝试使用Windows凭据管理器更新密码,但仍然无法解决问题

控制面板->凭据管理器->管理Windows凭据->选择git存储库的条目,然后编辑用户和密码。

然后我在凭据管理器中删除了所有与git相关的条目,然后尝试使用Visual Studio使用Git,这一次它提示您输入新凭据

答案 19 :(得分:-1)

我的解决方案与众不同,而且速度更快:)

  1. 转到Windows凭据(开始-> Windows凭据)并删除存储库的凭据(它们以git:xxx开头)
  2. 转到VSCode并在终端中输入:

    config credential.helper wincred

  3. 转到Visual Studio(无VSCode)并进行git pull。弹出窗口将显示询问凭据。将您的凭证用于回购

  4. 转到VSCode并进行git pull。凭据是从wincred商店自动获取的

凭据是自动创建的,并存储在wincredentials中,因此下次不会再要求您提供凭据。 (如果您使用的是由DevOps托管的git repo,还将从visualstudio.com提供个人访问令牌。)

答案 20 :(得分:-1)

删除 git origin 并再次添加对我有帮助。

查看原始 url,我发现 url 包含一些哈希值(它看起来像一些 auth 值)。因此,删除原点并重新添加解决了问题。