无法使用 GitBash 对 VisualStudioTeamServices 进行身份验证

由于身份验证失败,我无法在 VisualStudioTeamServices (VSTS)的远程存储库中运行任何命令。

我能够通过 Visual Studio 做拉等。但只能通过 Visual Studio。不能通过 Git Bash 或任何其他类似 源树的工具。

50780 次浏览

如果您希望使用 VisualStudio 之外的其他 Git 客户端,则需要启用备用身份验证凭据..。

要在 VisualStudioTeamServices (VSTS)中设置备用凭证,请单击右上角的名称/图标-> Security-> Alternate Authentication Credenals

编辑: 从 VSTS (从备用凭据屏幕获取)添加有关此的更多细节..。

备用认证凭证

一些在浏览器之外工作的应用程序(包括 Explorer Everywhere command line client and the git-tf utility) require basic authentication credentials. Other applications do not 期间使用用户名的电子邮件地址正确处理 认证。

要使用这些应用程序,您需要启用 Alternative 凭据,设置密码,并可选地设置辅助用户名 不是以电子邮件地址的形式。请注意 凭据不能用于从 Web 登录到服务 浏览器或这些应用程序之外。

在使用 Atlassian SourceTree 时,您需要在 VisualStudioTeamServices (VSTS)中设置基本凭据,就像在接受的答案中那样。

然后在 SourceTree 中进入菜单 工具选择认证选项卡。

您需要将设置的非电子邮件用户名设置为 xxx.visualstudio.com 主机的基本用户名凭据。

然后,在访问该 VSTSGit 存储库时,系统会提示您输入密码。

我注意到 VisualStudioTeamServices 中更改的菜单的措辞(和位置)。它现在位于下拉菜单的右上角(与您的首字母或照片) Security → Alternate authentication credentials。只需启用并创建您的用户名和密码。

Enter image description here

  1. 启用备用身份验证凭据并设置辅助用户名

    Enter image description here

  2. 为 VisualStudioTeamServices 帐户创建个人访问令牌并复制该令牌

    Enter image description here

  3. 打开 Git Bash,进入克隆存储库的文件夹,输入以下命令,确保它存储了凭据,而且不需要每次都输入:

    git config credential.helper store
    
  4. git pull origin [your branch]

    It asks for user name and password. Enter user name and token as password

    enter image description here

在 Windows 上,可以使用 Git 证书管理器轻松创建个人访问令牌。这是 VisualStudioTeamServices 现在似乎比备用身份验证凭据更推荐的方式。

只需安装该实用程序,然后下次从 Git Bash 安装 git pull时,它将提示您输入 VisualStudioTeamServices 访问凭据。然后,它将在您的 VSTS 帐户中创建一个个人访问令牌,并向本地 Windows 凭据存储区添加几个条目。

引自网站:

当需要凭证时,它神奇地工作。例如,当推送到 VisualStudioTeamServices 时,它会自动打开一个窗口并初始化 oauth2流以获取令牌。

Downloading the latest version of Git and including the Git Credential Manager worked for me.

使用 Git 凭证管理器对 VSTS 进行身份验证

As per 2017-06-21, the page to enable alternate authentication settings is at 链接 https://*YOUR_USER_NAME*.visualstudio.com/_details/security/altcreds