3

我想我可能误解了这个函数的目的,但这是我的问题。

当我查看构建摘要时,我看到构建运行成功,它告诉我:

[person] triggered [build number] ([project]) for changeset 123456

我有以下代码,它在控制台应用程序中运行,告诉我构建中包含哪些变更集。

IBuildDefinition[] result = buildServer.QueryBuildDefinitions(teamProj.Name);
foreach (IBuildDefinition def in result)
{
    IBuildDetail[] dets = def.QueryBuilds();

    foreach (IBuildDetail det in dets)
    {
        det.RefreshAllDetails();

        // Get changesets for the buildList<IChangesetSummary> 
       changes = InformationNodeConverters.GetAssociatedChangesets(buildDetail);
       foreach (IChangesetSummary changeset in changes)
       {

       }
    }
}

问题是这没有返回任何内容。Information 属性有 6 个节点,其中没有一个与变更集或工作项相关。为什么 VS2010 构建摘要告诉我我有一个关联的变更集,但下面的代码告诉我不同​​?

4

1 回答 1

2

构建的状态是什么?(成功、失败或部分成功)?另外,您使用的是哪个构建过程模板?您是否使用了默认的构建过程模板,如果您使用了,您是否对其进行了任何更新?如果您自定义构建以使AssociateChangesetsAndWorkItems构建活动正常工作,那么您必须确保保留一些内容。

我在这里帮助安迪刘易斯提供了一些信息:http: //blogs.msdn.com/b/andy-lewis/archive/2011/01/31/how-good-was-that-build.aspx

您提到的字符串实际上并不表明存在关联的变更集。在构建摘要屏幕上,您应该会看到一个显示“关联变更集”的部分。如果您不这样做,那么这通常是存在问题的第一个迹象。

让我们知道一些额外的信息,我很乐意为您提供帮助!

于 2011-03-29T01:31:51.150 回答