gpt4 book ai didi

git - Build.SourceVersion 在 VSO vNext Build 中为空

转载 作者:太空狗 更新时间:2023-10-29 12:46:58 24 4
gpt4 key购买 nike

我正在使用 Visual Studio Online 中新的可编写脚本的构建功能(不是 XAML 构建定义),并且我正在尝试让构建版本号使用构建号格式包含目标存储库的最新 Git 提交 ID。

我正在使用以下内部版本号格式:

$(MajorVersion).$(MinorVersion).$(BuildId).$(SourceVersion)

这会导致生成的版本号为 1.0.1234。 - 即 SourceVersion 值为空,这会在排队构建时导致 VSO 出错。我还尝试通过在变量前加上 Build. 来限定变量,结果相同。为了测试,我已将内部版本号更改为以下格式:

$(MajorVersion).$(MinorVersion).$(BuildId).$(SourceBranch)

这会正确地产生值 1.0.1234.refs_heads_master

我一直在使用 Predefined Variables引用和 Build.SourceVersion 被列为全局变量。

我是不是做错了什么,我是不是遇到了错误,或者这是设计使然,在构建排队时不可用?如果这是设计使然,是否有任何方法可以自动将简短的 Git 提交 ID 包含在内部版本号格式中?

这是我在 VSO 中设置内部版本号格式的地方: This is where I set the build number format in VSO

这是我在未明确指定 Git CommitId 时看到的错误:

400: The build number format string $(MajorVersion).$(MinorVersion).$(BuildId).$(SourceVersion) generated a build number 0.1.1. which contains invalid character(s), is too long, or ends with '.'. The maximum length of a build number is 255 characters. Characters which are not allowed include '"', '/', ':', '<', '>', '\', '|', '?', '@', and '*'.

最佳答案

我能够使用 $(Build.SourceVersion),但只有当构建在提交时自动触发时(持续集成)。仅当我手动排队时它才为空:

Build queue screenshot

我使用的是以下内部版本号格式:

$(BuildDefinitionName)_$(date:yyyyMMdd)_$(Build.BuildId).$(Build.SourceVersion)$(rev:.r)

关于git - Build.SourceVersion 在 VSO vNext Build 中为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32603712/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com