【问题标题】:TFS 2010 Build based on Work items基于工作项的 TFS 2010 构建
【发布时间】:2013-03-11 15:38:58
【问题描述】:

场景:开发团队假设有 10 个工作项。他们解决了 8 个工作项,并且需要对 50 个文件进行更改(签出和签入以及签入期间与工作项相关联)。他们还处理了剩余的 2 个工作项,并修复并签入了 5 个文件,但工作项尚未完全完成,因此尚未解决。现在我想创建一个仅包含 50 个文件的构建,这些文件与 8 个已解决的工作项相关联(并从构建中排除 2 个未解决的错误的 5 个文件)。有没有办法在 TFS 2010 中做到这一点?

【问题讨论】:

    标签: tfs


    【解决方案1】:

    TFS 从变更集构建,因此您需要找出与您需要包含/排除的工作项关联的变更集。简单地浏览历史可能就足够了,但您可能必须检查哪些变更集与工作项相关联。

    • 如果您很幸运,那些您不想包含在构建中的变更集稍后会出现在历史记录中,那么只需设置一个仅包含历史记录的工作区,直到您需要的变更集。如果您使用的是 Team Build,则默认构建过程具有参数 GetVersion,您可以将其设置为排队时要构建的变更集。如果是手动的,你必须做一个

      tf get /version:C<changeset number>

    • (已更新) 另一方面,如果签入的顺序是混合的(您需要排除的一些更改在您需要包括的一些更改之前完成),最好方法是创建一个分支,然后只将需要包含的变更集合并到该分支。然后,您可以简单地从该分支上的最新版本构建。

      1) 使用历史记录,使用您需要的代码查找最新的变更集(最接近您需要排除的代码) 2)基于该版本创建一个分支。 3) 对构建中需要包含的其他变更集进行选择性合并,跳过不需要的变更集。 4) 从该分支上的最新版本构建。

    【讨论】:

    • 感谢您的意见。我的情况是,我需要排除的一些更改在我需要包含的一些更改之前完成。我们没有使用 Team Build。我们可以使用“获取特定版本”并在那里给出变更集编号吗?这行得通吗?
    • 如果我必须进行日常构建,使用分支和合并是否相当容易?因为我在分支中观察到的一件事是,当我进行分支时,我需要再次更改引用 - 如果我必须每天进行构建,这可能会变得乏味。另外你知道关于分支/合并的好文档吗?
    • 不,这不是每天都可行的方法。由于情况似乎如此,我强烈建议您调整开发和构建过程以“反转”场景。让开发人员在开发分支上工作,当他们完成任务后,让他们将其合并到集成分支(因为他们进行了更改,他们应该进行合并)。只要在那里进行了签入,就从集成分支构建。
    猜你喜欢
    • 2018-01-10
    • 2013-02-21
    • 2011-05-16
    • 1970-01-01
    • 2012-01-29
    • 2011-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多