【问题标题】:TFS 2015 one build for all branchesTFS 2015 为所有分支构建一个版本
【发布时间】:2016-01-19 13:04:20
【问题描述】:

我们有很多功能分支,我们不想为每个分支手动创建构建定义以进行持续集成。

是否可以在 TFS Build 2015 中创建一个构建定义,以便在代码签入时从分支构建解决方案?我们正在使用 TFVC 进行源代码控制。

最好只将活动分支下载到构建代理,因为我们有很多旧分支没有任何签入。

关于旧的 TFS 构建系统也有类似的问题,但由于构建系统在 TFS 2015 中完全改变,答案也会有所不同 - TFS build, one build for many branches

【问题讨论】:

    标签: tfs msbuild tfsbuild tfs-2015 tfvc


    【解决方案1】:

    简短回答:不。

    不幸的是,这适用于 Git,不适用于 TFVC。

    【讨论】:

    • 此声明的任何来源?是否有指向 Microsoft 的问题/声明的链接?
    【解决方案2】:

    实际上,根据我刚刚使用以下简单结构运行的测试,TFS 2015 Update 2 似乎可以开箱即用...

    $/Project
    $/Project/Product1/Solution1/
    $/Project/Product1/Solution1/solution1.sln 
    :     (and everything below it)
    $/Project/Product1/Solution1-branch/solution1.sln
    :     (and everything branched below it)
    $/Project/Product1/Feature2/another-solution1.sln
    :     (and everything below it)
    

    构建设置: 构建选项卡 |解决方案应该是“**\*.sln”,存储库选项卡 |存储库应为“项目”,映射应包括“$/Project/Product1/”。

    解决方案字段中的 ** 导致它递归搜索 *.sln 文件,然后按顺序构建。

    我刚试过这个,它一个接一个地构建了所有分支。

    如果您使用单一递归方法,排除“旧”分支可能会更困难,但您始终可以简单地在映射区域中列出所需的分支 - 净结果应该相同。

    希望对您有所帮助。

    【讨论】:

      【解决方案3】:

      如果我理解你的问题,这可能对你有用。

      这将构建所有功能分支,以及作为 CI 一部分的开发(默认)分支。

      不知道为什么,但是如果你颠倒这些顺序,它就不起作用了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-07-18
        • 2016-04-24
        • 2016-04-13
        • 2013-03-04
        • 2018-05-12
        • 2015-09-09
        • 1970-01-01
        相关资源
        最近更新 更多