我们有一个大型代码库,其中包含需要自动构建的各种标签。 我们正在使用TFS 2012 Express和VS 2010
我们的代码是由批处理文件构建的,因此我创建了一个虚拟解决方案,autobuild构建了该解决方案,该解决方案的构建指令只运行批处理文件。
我想在此解决方案中使用不同的配置来构建不同的标签。
因此,除了调试和发布配置之外,我还添加了一个名为LABEL的调用不同的批处理文件,并在TFS中添加了一个新的自动构建,在“必需 - 构建配置”框中使用“标签”配置调用此解决方案。
但是,当我尝试运行它时,它无法声称'label'配置不存在。
有谁知道怎么做?
额外: 如果我使用Release配置调用一个批处理文件而Debug调用一个调用另一个批处理文件但它仍然找不到用户创建的配置似乎有用吗?
答案 0 :(得分:-1)
如果假设“Autobuild”意味着“通过TFS构建定义构建”。
如果“label”表示源控件标签,则在对构建进行排队时,可以将其“Get Version”参数设置为标签 - 例如,对于标签MyLabel
使用{{1} }。
如果通过“label”表示批处理文件构建内部的某个定义,则可以通过MSBuild属性传递它:通过将LMyLabel
添加到“MSBuild参数”,在构建定义中定义它。然后,在解决方案调用批处理的位置,您可以使用"/p:label=mylabel"
从构建定义中获取值。
此外,您可以修改构建模板以直接调用批处理文件,并使用您在构建定义中设置的参数,并将模板传递给批处理文件,而不是这个hacky .sln。