繁体   English   中英

“致命:身份验证失败”与 git-credential-manager

[英]"fatal: Authentication failed" with git-credential-manager

我第一次使用 Azure DevOps 来托管我的下一个项目。 当我在 Azure Devops 上创建一个空项目时,我尝试克隆它。 在尝试克隆时,它要求我输入密码。 我输入了它,它说我的密码有误,但我知道我输入的密码是正确的。

然后我在我的 mac 上安装了git-credential-manager for max/linux。 我尝试从远程来源执行git pull取,但它只是像第一次一样提示输入密码,但失败了。

我还尝试在 Azure Devops 上使用“创建 git 凭据”功能,我可以在其中指定一个新密码。 这也因同样的错误而失败。

我在此处的存储库中提交了一个 GitHub 问题。 我没有办法克隆我的项目吗? 我存储库的 url 的形式为https://yousefshanawany@dev.azure.com/...

更新:我在我的 Windows 机器上试过这个,它给了我一个登录弹出窗口,它工作正常。

确保您的 git 凭证助手已向本地 Git 声明:

git config credential.helper

如果输出为空,请键入:

git config --global credential.helper manager-core

然后再试一次。

但是, OP AskYous正确地指出了评论中的另一个问题:

我可以告诉它我的用户名是什么吗?
我认为我的用户名是我的电子邮件地址,因为我使用我的组织帐户登录。

在这种情况下,URL 将是:

https://me%40email.com@dev.azure.com/yousefshanawany/<repo-name>/

请注意,电子邮件的@必须是百分比编码的


请注意, 使用 PAT(个人访问令牌)OP提到的替代方法,如果您已激活 2FA ,则必须使用。


2019 年 6 月更新:在microsoft/Git-Credential-Manager-for-Mac-and-Linux问题 104中引用了这个问题,该问题刚刚结束,微软的 John Briggs发表了评论:

我建议尝试GCM Core 的 macOS 预览版


Maksym Pecheniuk 在评论中指出

IntelliJ Idea的解决方案:“ Git IntelliJ“身份验证失败”

解决我的问题的是:

  1. https://dev.azure.com/创建存储库

  2. 从存储库视图中,使用namepassword创建您的凭据在此处输入图片说明

  3. 现在在控制台中,您可以通过更改 azure 为您提供的初始 URL 来克隆您的存储库

git clone https://<companyname>@dev.azure.com/<companyname>/<project name>/_git/<repository name>

git clone https://<your credentials name>@dev.azure.com/<companyname>/<project name/_git/<repository name>

现在它会要求你输入密码。 您必须使用您在创建凭据时提供的凭据。

我找到的一个解决方案是使用个人访问令牌 (PAT)。 它位于“克隆”选项卡中。 它很容易工作。

相同的错误(Windows,Git Bash 命令行)。 使用 https(不是 ssh),它应该提示输入登录凭据,但出现错误:

$ git pull origin master
fatal: Authentication failed for 'https://github.com/frmbelz/my_git_project.git'
$ git config -l
...
credential.helper=manager
...

$ git config --global --unset credential.helper
$ git config --system --unset credential.helper

git pull现在提示输入用户名/密码提示。

FWIW,我发现我必须使用 Git-Credential-Manager-Core 实用程序:

https://github.com/microsoft/Git-Credential-Manager-Core

您可以通过运行以下命令重新配置 Git Credential Manager:

git credential-manager-core configure

结果:

配置组件“Git 凭据管理器”...

配置组件“Azure Repos 提供程序”...

是的,所以我的同事和我遇到了同样的问题(在 Windows 上没有这个问题,只有在 mac 上),上述解决方案对他有用,对我不起作用。 我必须通过本指南使用个人访问令牌验证访问来创建个人访问令牌 (PAT)。

然后在 iTerm 中:git clone https://octavialo%40organizationname:abcBFJreallylongtokenstringGHYKLjjsjks@dev.azure.com/organizationname/reponame

%40 是 @ 符号的代表。 我使用 Octavilo@organizationname.com 登录到 azure

我也尝试过,其中 foobar 是我给令牌的名称:git clone https://foobar:abcBFJreallylongtokenstringGHYKLjjsjks@dev.azure.com/organizationname/

我认为问题可能出在我的密码中,其中包含特殊字符。

我将 sudo 添加到我的 git push 命令中,系统提示我输入我的 github 凭据并且它工作正常

sudo git push

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM