【发布时间】:2021-02-22 16:20:59
【问题描述】:
我正在开发连接到我的 Windows 自托管代理的 Azure 管道。
我知道我可以访问存储在 Intranet TFS 2018 服务器上的项目,但我一直出现“身份验证失败”错误。
这是否取决于 TFS 中的项目类型?
我以前从未使用 Git 连接到我在 VS 2019 中的项目。
在机器上,在我使用 VS2019 处理这个项目的同一帐户下,我尝试了这些命令:
git clone https://tfs.myCie.com/DefaultCollection/myProject/
> Result: Cloning into ' myProject '...
> fatal: repository 'https://tfs.myCie.com/DefaultCollection/myProject/' not found
git clone https://user:<PAT>@tfs.myCie.com/DefaultCollection/myProject/
> Result: Cloning into ' myProject '...
> fatal: Authentication failed for 'https://user:<PAT>@tfs.myCie.com/DefaultCollection/myProject/'
我目前是此 TFS 项目中“Contributors”和“Project Administrators”组的成员。
我想知道问题出在哪里,会不会是git代理错误?
会不会是 TFS 访问权限错误?
会不会是项目类型的问题,可能是 TFS 中的一些项目无法从 Git 访问?
是否需要在服务器上启用基本身份验证?
更新 1
在第一次尝试创建获取本地 TFS 实例上的源的管道时,它不起作用,我怀疑是因为代理上的 git 配置为使用代理,并且该代理不允许连接到内部 TFS 服务器。
我想解决这个问题并创建一个不获取源但运行脚本以克隆代理上的 repo 然后构建它的管道:
由于管道中的脚本不起作用,我在我的电脑上的命令提示符下尝试了它,VS2019 确实连接到“repo”。
您可能有一点说它看起来不像一个 repo,我从未使用过 Git,我曾经打开 Visual Studio,打开 Team Explorer,选择我的项目并进行签出和签入。
直到今天我才注意到 Team Explorer 显示名称:Azure DevOps Server,但我知道后面是 TFS 2018 服务器:
我知道我可以使用 Git 从我的 TFS 服务器克隆“repo”,但可能没有涵盖这种情况,这就是我问几个问题的原因......因为我什至不确定我想要做什么是可能的,你问我得到的克隆 repo URI 是什么,但我找不到克隆 repo URI :(
在更一般的情况下,我被要求为我们所有的项目创建 Azure DevOps Pipelines,它必须在 Windows 自托管代理上运行,我们在 GitHub、Azure Repos 和这个 on'prem 上都有项目TFS 服务器。我有前两个的管道,但我无法建立与 TFS 的连接。
更新 2
感谢您的指点,我的用户界面似乎与您显示的不同,或者我没有找到但我确实找到了它...
这是我在 TFS 中打开项目时看到的内容:
【问题讨论】:
-
我不明白你在问什么。您是否在在您的桌面计算机上克隆存储库时遇到问题?或者您是否在在构建过程中克隆存储库时遇到问题?您的构建管道是什么样的?该 url
https://user:<PAT>@tfs.myCie.com/DefaultCollection/myProject/看起来不像 Git repo URI。当你去 repo 时,克隆 URI 是什么? -
一般来说,您需要提供尽可能多的信息。您是否尝试使用单独的 Azure DevOps 帐户来克隆托管在本地 TFS 实例中的 Git 存储库?请准确地说明您要完成的工作。
-
对不起,不清楚,我已经有一段时间了……我想创建一个使用服务连接来连接到 Intranet TFS Server 的管道,但没有成功,所以我跳过了管道的源部分,现在,我正在编写一个在代理上运行的脚本,以克隆 repo 并在那里构建它。我会更新我的问题以使其更清楚。
-
这不是 Git 存储库,而是 TFVC 存储库。您需要调整您尝试实施的任何流程以使用 TFVC。
-
哦!好的,谢谢你!我不知道为什么我知道我可以使用 Git 访问它...我将阅读有关从 TFVC 存储库的本地 TFS 实例获取源代码的信息。