首页 > 解决方案 > 无法在 Azure DevOps Pipelines 的命令行脚本任务中克隆 git 存储库

问题描述

我创建了 azure devops 管道,我需要从另一个 git 存储库下载代码。根据我在某处读过的推荐解决方案,我使用 git clone 命令添加了一个命令行脚本任务。不幸的是,这不起作用。

我得到的错误是:远程:TF200016:以下项目不存在:My0Test0Project。验证项目名称是否正确以及项目是否存在于指定的 Azure DevOps 服务器上。致命:找不到存储库“ https://dev.azure.com/myCompany/My0Test0Project/_git/Service.Azure.Core/ ”

我在 Azure 中的项目有空间,也许 azure 中存在与此相关的错误?有人知道任何解决方法吗?

这是我已经尝试过的一些代码:

git -c http.extraheader="AUTHORIZATION: Basic bXl1c2VyOmxtNjRpYTYzb283bW1iYXp1bnpzMml2eWxzbXZoZXE2azR1b3V2bXdzbnl5b3R5YWlnY2E=" clone https://dev.azure.com/myCompany/My%20Test%20Project/_git/Service.Azure.Core
git -c http.extraheader="AUTHORIZATION: bearer $(System.AccessToken)" clone https://dev.azure.com/myCompany/My%20Test%20Project/_git/Service.Azure.Core
git clone https://oauth:lm64ia63oo7mmbazunzs2ivylsmvheq6k4uouvmwsnyyotyaigca@dev.azure.com/myCompany/My%20Test%20Project/_git/Service.Azure.Core
git clone https://test:$(System.AccessToken)@dev.azure.com/myCompany/My%20Test%20Project/_git/Service.Azure.Core

标签: azure-devopsazure-pipelines

解决方案


原因是您需要添加系统访问令牌,以便 Azure 可以访问外部存储库。(您的凭据需要访问该存储库)

笔记:

我将我的 URL 用引号括起来以转义 URL 字符串中的 % 符号,因为 Powershell 将它们视为变量。

- powershell: |
    git clone -c http.extraheader="AUTHORIZATION: bearer $(System.AccessToken)" "https://{YOUR PIPELINE URL}"
    displayName: '{YOUR PIPELINE NAME}'

推荐阅读