Github桌面版身份验证失败

23

使用的工具:Windows 10、Github桌面版、Git 2.19.1.windows.1(64位)、VisualStudio VSTS

背景:成功将我的存储库添加到本地计算机,但是无法对其进行任何操作。我可以访问远程存储库,以前我使用过GitTortoise,可以很好地提交。

步骤:尝试使用Github桌面版获取、拉取或提交更改到远程存储库。

错误:身份验证失败(我们无法通过存储库进行身份验证。请重新输入用户名和密码以重试。)

尝试:尝试输入我用于登录Visual Studio VSTS的用户名和密码,但仍然出现相同的错误。

目标:从Github桌面版中获取、拉取或提交更改到远程存储库。


我想找到这个问题的答案,我的同事在使用GitHub桌面版与VSTS(Azure DevOps)一起工作,有趣的是这是一个意外,他不知道如何做到的。 - lacripta
4
由于DevOps将GitHub Desktop作为客户端进行推广,我也遇到了同样的问题。通过在DevOps中创建个人访问令牌并将该令牌用作密码,在GitHub Desktop中成功克隆了一个代码库。 - bhoeschen
4个回答

39

实际上,上面的那个人 @bhoeschen 是正确的。

不要输入您的 VSTS / Azure DevOPS 用户名和密码,而是创建一个个人访问令牌(PAT),并将其用作密码。

https://learn.microsoft.com/en-au/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate

从该页面中简化的说明:

  1. 登录到 Azure DevOps 组织中的任何一个
  2. 从主页打开您的个人资料。进入您的安全详细信息。
  3. 创建个人访问令牌。
  4. 为您的令牌命名。选择令牌的生命周期。
  5. 选择此令牌将为您特定任务授权的范围。
  6. 完成后,请确保复制该令牌。您将使用此令牌作为密码。

3
除了步骤6之外,我还需要“重新生成”令牌,因为某些原因令牌密钥没有显示出来。此外,我将令牌输入到Github桌面客户端的用户名/密码字段中。 - wal
另外补充一点,如果 GH Desktop 没有提示您输入凭据,请先尝试从 git 命令行进行克隆,然后手动添加本地仓库并获取。然后它应该会要求您输入凭据,您可以使用上述建议(用户名和 PAT)。 - MIke Pateras
@wal,根据创建令牌后显示的信息,它根本没有存储在Azure中,因此他们以后无法为您显示它。您需要将其保存在安全的地方以备将来使用,或者按照您所说的重新生成它。 - Hudgi

0

还有一个需要注意的细节。使用正确的仓库地址非常重要。它需要具备以下格式:

https://<organization>@dev.azure.com/<organization>/<project_name>/_git/<repository_name>

使用GitHub桌面验证到Azure DevOps所指出。

请注意,该链接在<username>处指定而不是<organization>,然而对我来说这并不起作用,仓库的属性也使用了组织名。


0
在寻找了许多无用的答案后,我偶然发现了一个https://github.com/desktop/desktop/issues/7454
这是对我有效的解决方案。
一些用户报告修改命令处理器的AutoRun设置(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\Autorun)会导致认证问题。
删除我的Autorun后,我再也没有遇到这些问题了。

0

今天我也遇到了同样的错误。我进行了交叉检查,发现我已经添加了远程源

git remote add origin "url"

所以基本上移除远程源或目的地解决了我的问题。

git remote rm origin
git remote rm destination

我尝试使用Github桌面版进行推送,它成功了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接