手动关联tfs构建中的变更集

时间:2014-04-24 12:49:01

标签: tfs build changeset

默认情况下,Microsoft TFS构建会在上次成功构建之后将所有变更集分配到"关联变更集"。有没有办法手动完成? 我想要实现的是搜索具有"构建质量"设置为已发布。
因此,每次构建都会在最新的"已发布"之后关联所有变更集。建立。 有可能吗?

1 个答案:

答案 0 :(得分:1)

如果您使用的是TFS 2012,则构建工作流程具有“Microsoft.TeamFoundation.Build.Workflow.Activities.AssociateChangesetsandWorkItems”类型的“关联变更集和工作项”活动,该活动获取所有变更集并将其与构建关联。

如果要更改此设置,则需要将此活动替换为自定义工作流程步骤。我会将“查找更改集”部分留给您,但以下活动将允许您将更改集与您的构建相关联

namespace ContractLibrary
{
    using Microsoft.TeamFoundation.Build.Workflow.Activities;
    using Microsoft.TeamFoundation.Build.Workflow.Tracking;
    using System;
    using System.Activities;

    public class WriteAssociatedChangesets : CodeActivity
    {
        protected override void Execute(CodeActivityContext context)
        {
            if (context == null)
            {
                return;
            }

            this.WriteBuildInformation(context);
        }

        private void WriteBuildInformation(CodeActivityContext context)
        {
            var buildInformation = new WriteBuildInformation<AssociatedChangeset>()
            {
                Value = new AssociatedChangeset() { ChangesetId = 17997 /*Your ChangsetsID*/ }
            };

            context.Track(buildInformation);
        }
    }
}

post对于了解如何编写构建信息非常有用。