在我试图将一个由组织管理的私有GitHub仓库导入到我的新Azure DevOps账户时,遇到了同样的问题(尽管我的账户是GitHub和Azure DevOps配置文件的所有者并且我正在尝试链接它们)。
实际上有三个步骤可以帮助我解决这个问题:
通过 Azure DevOps > 你的项目 > 项目设置 > GitHub连接来链接两个账户。如果你的GitHub仓库存储在一个组织配置文件中,在此处必须确保你在设置Azure DevOps连接时授予该组织访问权限(在Azure DevOps中识别出的组织配置文件旁边会有一个小的Grant按钮,你必须按下它才能真正授予访问权限)。在我的情况下,我错过了这个步骤,连接未能正常工作(Azure DevOps无法在GitHub配置文件中找到任何仓库)。要解决这个问题,我必须从GitHub自动发送给我的电子邮件中跟随链接,并在那里授予Azure DevOps访问权限。然后在Github > 你的组织 > 组织设置 > 第三方访问中,你将能够在列表中看到Azure DevOps - 如果状态是Approved,则表示一切顺利。
接着,我需要在GitHub的个人资料(而不是组织资料)中创建一个用于Azure DevOps导入仓库的PAT。特别感谢@Yang Shen在上面指出这一点。这样,您首先需要前往Github > 您的个人资料 > 个人设置 > 开发者设置 > 个人访问令牌并在那里生成新令牌。
然后,我返回Azure DevOps > 您的项目 > Repos > Files > Import,并进行以下操作: a) 链接到我的私有Github repo; b) 选中“要求身份验证”; c) 我的GitHub用户名; d) 在步骤2中生成的我的PAT代替我的实际密码。
然后就像魔术般地运行了,我的私有Github仓库被克隆到Azure Repos中。
我找到了解决方案!
在您的GitHub账户中,点击右上角的图标,然后点击设置(Settings)
在左侧边栏中,点击开发人员设置(Developer settings)
然后再次在左侧边栏中,点击个人访问令牌(Personal access tokens)
单击生成新令牌(Generate new token)
为令牌命名,例如“移动到Azure”
将到期时间(Expiration)设置为您需要的时间长度来进行移动操作
在选择作用域(Select scopes)下,勾选repo
单击标有生成令牌(Generate token)的绿色按钮
复制您的令牌(如果您有多个存储库,请将其保存在密码保险箱中)
在Azure中,将其粘贴到密码/PAT(Password / PAT)字段中
在移动所有存储库之后,请不要忘记从GitHub中删除您的个人访问令牌
用户名
。但星号 * 缺失了。我遇到了同样的问题,当我输入我的确切Github用户名和PAT时它可以工作。在创建PAT时,请确保选择github scopes:repo和projects。