首页 > 解决方案 > 尝试对 Azure Devops 执行 git push 时登录失败

问题描述

我在一台 Windows 10 机器上,今天早上我的 git 凭据按预期工作,我正忙于将代码推送和拉取到我们的 Azure Devops 项目。现在我无论如何都不能从这个特定的虚拟机上。当我这样做时,git pull我会收到标准的 MS 身份验证提示,并且可以看到我的 MS 帐户(通过我们的联合 AD 连接到 Windows)

在此处输入图像描述 我点击我的帐户,提示消失了,提示中出现错误:

Logon failed, use ctrl+c to cancel basic credential prompt. Password for 'https://myOrg@dev.azure.com':

如果我输入我的 AD 密码(或其他任何密码),我会收到一条身份验证失败消息。我还尝试通过在 MS 登录窗口中选择“使用另一个帐户”来重新输入我的凭据,我得到了相同的结果。

我已经看到通过从凭据管理器中删除缓存的凭据来解决的问题。所以我去Control Panel->Credential Manager并删除所有存储的凭据并再次尝试 git 操作。

我得到了相同的 MS 登录窗口,奇怪的是我的帐户仍然存在,并且已连接到 Windows(当我单击它时以同样的方式失败)

因此,我删除了通过Settings-> Accounts->关联的帐户Access work or school。我可以在那里看到我的 MS 帐户,这看起来很有希望,但行为相同。我尝试更新 git(它是 v2.21.0.windows.1)我还根据我在 SO 和微软论坛上找到的一些答案安装了微软的git 凭据管理器。仍然得到同样的错误。

我重新启动并再次删除了所有凭据/帐户,然后尝试从 Visual Studio 而不是从命令行调用 git。

同样的错误!

我的下一步是重建我的 Windows 配置文件,我希望它能重置所有这些东西。我可以从另一个 VM 访问该站点,因此它似乎是这台机器上的某种 git 配置/缓存凭据。

任何帮助/想法表示赞赏。

标签: gitazure-devopsazure-active-directory

解决方案


将我的 DevOps 组织移动到不同的租户时,我遇到了这个问题。解决我的问题的唯一方法是tenant.cache从 GitCredManager 中删除文件,请参阅:

如果您使用 Visual Studio 或 Git 命令行工具,您可能需要清除 Git Credential Manager 的缓存。删除每台客户端计算机上的 %LocalAppData%\GitCredentialManager\tenant.cache 文件可解决此问题。

来自https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/connect-organization-to-azure-ad?view=azure-devops


推荐阅读