首页 > 解决方案 > TFS 构建 - 与外部 Git 存储库的持续集成

问题描述

我在 Gitlab 本地服务器上托管了一个 Git 存储库,我需要使用 TFS 构建设置 CI。我设法设置了一个手动 TFS 构建,它成功地从我的 Git 存储库中提取了源代码。我在我的 TFS 构建定义中添加了一个 CI 触发器,并且构建实际上为每个提交触发,但失败并出现以下错误:

轮询存储库时发生异常。错误:Microsoft.TeamFoundation.Build2.Server.Extensions.ExternalConnectorException:基本身份验证需要与服务器的安全连接

有任何想法吗?

标签: gittfsgitlabtfsbuild

解决方案


根据错误消息,此问题是由身份验证问题引起的。

你是如何设置端点服务的?

不要在 TFS 上创建的“服务”端点上使用http来访问 GitLab 存储库,而是在 URL 中使用HTTPS

除了启用对存储库的 HTTPS 访问之外,请记住在您的 GitLab 帐户上设置密码,然后在 TFS 上设置的“服务”端点上使用该密码以及您的用户名(电子邮件地址)。

您还可以尝试Personal Access Token在 Gitlab 中创建一个并将其添加到构建定义中的存储库 URL(在获取任务和服务端点定义中)。

然后尝试触发 CI 构建并再次测试。


更新:

根据我对HTTPS的测试,在提交对 Gitlab 的更改时,CI 的一切都按预期工作(对于 PAT 和基本用户名和密码)。

在 TFS 2015 Update4.1 和 TFS2017Update3.1 上对此进行了测试...

因此,只需尝试我上面提到的解决方案。

在此处输入图像描述


推荐阅读