构建中的标记 git 版本 - 在 git 中找不到标记

Tag git version from build - tag not found in git

我正在使用 Visual Studio 在线从团队服务(以前是 Visual Studio 在线)git 存储库构建 Visual Studio 解决方案。构建发生在已向 Team Services 注册并发布到 Team Services 的本地构建代理上。

在构建定义的 "Repository" 设置中,我将 "Label sources" 设置为 "On successful build",并指定了 "Label format"。

构建日志显示版本已标记:

Created ref refs/tags/BuildName - SolutionName - Release_1.2.16134.03 at c1fa2a4b9e0f3365e2269bb947af7819faf40354.

并且在构建的 "Artifacts" 选项卡上,它显示 "build.sourceLabel" 超链接到:

refs/tags/BuildName - SolutionName ...

但是,当我单击超链接时,出现 TFS 错误:

TF401175:The version descriptor <Tag: BuildName - SolutionName - Release_1.2.16134.03 > could not be resolved to a version in the repository RepositoryName

我在本地 git 存储库中也找不到任何标签:

git pull --tags
git tag

什么都不显示。

我是否需要任何额外的步骤来将我的源标签从构建代理推送到 Team Services? 上的最佳答案似乎表明我所做的是正确的(但我没有使用托管池)。

我的存储库设置如下所示:

还有其他人遇到过这个问题吗?有什么建议吗?

提前致谢。

这是标签名称中的空白space造成的。根据您提供的日志,您的构建定义被命名为 "BuildName - SolutionName - Release",并且您正在使用构建定义名称来创建标签。这会导致标记名称中出现空白 space。更新 "Label format" 以使用其他名称格式或更新您的构建定义名称以删除其中的空白 space(例如:BuildName-SolutionName-Release)应该可以解决问题。