首页 > 解决方案 > 无法克隆源代码,因为 vsts 权限

问题描述

我正在尝试使用 vsts 将 Java 应用程序部署到容器中

这项工作将:

ssh 连接到 docker vm 步骤后,我的 vsts 作业显示错误:

TF401019: The Git repository with name or identifier [Git Repository] does not exist or you do not have permissions for the operation you are attempting.

进入 docker VM,我也无法从 vsts 克隆项目(显示相同的错误),尽管我已经生成了一个公钥并将它们放入 vsts 服务器

有人对我做错了什么有想法吗?

当我sudo git clone @link to git repo从 docker vm使用时

像这样的错误消息:

Your Git command did not succeed.
Details:
    Public key authentication failed.

fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

标签: gitdockerazure-devopsazure-pipelines

解决方案


是的,您在生成公钥并将其放入 vsts 服务器(Azure DevOps)的正确方法似乎 Azure DevOps(VSTS)没有您的公共 SSH 密钥与 repo 一起使用。您可以在需要克隆存储库的 VM 上创建 SSH 密钥对。请打开 Git Bash 控制台工具(或只输入终端)并在下一个命令和您的 Azure DevOps 帐户电子邮件中创建 SSH 密钥:

ssh-keygen -C "jamal@fabrikam.com"

输入更改后的命令后,按ENTER将密钥保存在建议的文件中,如果已经存在 SSH 密钥文件,则输入y键覆盖。然后控制台将要求设置密码,只需按两次 ENTER 按钮使其为空。

下一步是读取公共 SSH 密钥并将其复制到 Azure DevOps 安全页面。此命令将输出公钥:

cat ~/.ssh/id_rsa.pub 

然后选择并复制到剪贴板您的公钥(没有任何空格)。最后一步是将公钥添加到 Azure DevOps Services。这个链接会告诉你在哪里添加它。完成这些步骤后,您可以再次尝试使用源代码克隆存储库。


推荐阅读