繁体   English   中英

无法推送到 Azure DevOps git repo - 它没有要求输入用户名

[英]Failed to push to Azure DevOps git repo - it didn't ask for username

我正在尝试 Microsoft 提供的新 Azure DevOps 产品。 我的帐户是通过我的学校 (GeorgiaTech) 提供的。 我为此使用了一个开源项目(dcm4che)。 我在本地从 GitHub 克隆了 dcm4che 存储库。 现在尝试将其推送到 Azure DevOps

➜  dcm4che git:(master) git remote add azure https://OHIF@dev.azure.com/OHIF/dcm4che/_git/dcm4che
➜  dcm4che git:(master) git push -u azure --all
Password for 'https://OHIF@dev.azure.com':
fatal: Authentication failed for 'https://OHIF@dev.azure.com/OHIF/dcm4che/_git/dcm4che/'

令人惊讶的是,Azure 没有问我用户名。 我不知道我该怎么做才能提供用户名

不是要求用户名,因为在git remote add您将用户名放在 repo URL 之前: https://OHIF@dev.azure.com - URL 之前的OHIF@告诉 git 您要使用OHIF用户名,他询问此用户名的密码。

试试这个: git remote add azure https://dev.azure.com/OHIF/dcm4che/_git

这是包含在 Git For Windows 中的旧版 Git Credential Manager 和 Azure DevOps 使用的 URL 的新样式的问题。 新样式 URL 是以https://dev.azure.com/开头的 URL。 您不需要包含用户名。

如果可能,我建议您更新到 Windows 版 Git 的最新版本,其中包括最新的 Git Credential Manager。 可以从以下网址下载: https : //git-scm.com/downloads 我相信适用于 Windows v2.19.0 或更高版本的 Git 包含一个适用于这些 URL 的 Git Credential Manager 版本。

***适用于使用命令行或 Bash*

通常,在git clone <url of repo>会出现一个弹出屏幕,让您登录您的 Microsoft 帐户。

但是,某些旧版本的 Git(例如 2.17)由于某种原因不显示弹出窗口,而是要求输入密码。

第一个解决方案:只需将您的 git 更新到最新版本。

第二种解决方案但如果您使用的是受限设备(没有管理员权限等),那么这是第二种选择: 1. 登录 Azure Devops 帐户,单击您的头像,然后单击“安全” 在此处输入图片说明

  1. 创建一个具有这些参数的新个人令牌。 在此处输入图片说明

  2. 将令牌复制到某处,并在执行 git 命令时使用此令牌作为密码。 在此处输入图片说明

这是 git-credential manager 的一个已知问题( 错误报告

解决这个问题的最快方法是更改​​ URL

https://MY_USER@dev.azure.com/MY_USER/PROJECT/_git/REPOSITORY

进入

https://MY_USER@MY_USER.visualstudio.com/PROJECT/_git/REPOSITORY

仅当您使用 Visual Studio 2017 时。此错误在我将 VS 更新到 15.9.4 后得到修复。 虽然我有 git 2.17 版,但一切正常

就我而言,我使用 Visual Studio Code GUI 再次设置密码:

如何在 VSCode 上进行提取

单击 fetch 后,git 询问我密码以继续该过程,并且它起作用了!

暂无
暂无

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

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