Getting change sets between specific assemblies

I am trying to get all work items between two assemblies. I see only one way to make this work - get the start and end changes and get a work item for each. The problem I have is to go to the set of change sets from the build number. I tried using the changeset related ones, but this does not work as it only gets the changeset for this assembly, not one of them.

Can anyone help?

+4
source share
1 answer

This code will get all changes between two labels:

Console.WriteLine("Enter the first build label:"); var firstVersion = Console.ReadLine(); Console.WriteLine("Enter second build label:"); var secondVersion = Console.ReadLine(); var server = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("TFS SERVER INSTANCE")); var hyperlinker = server.GetService<TswaClientHyperlinkService>(); var versionService = server.GetService<VersionControlServer>(); var changesets = versionService.QueryHistory(@"$/EntDev", VersionSpec.Latest, 0, RecursionType.Full, null, VersionSpec.ParseSingleSpec("L" + firstVersion, null), VersionSpec.ParseSingleSpec("L" + secondVersion, null), Int32.MaxValue, false, false); var workItems = new List<WorkItem>(); foreach (Changeset changeset in changesets) { var link = hyperlinker.GetChangesetDetailsUrl(changeset.ChangesetId); Console.WriteLine("#" + changeset.ChangesetId.ToString() + " - " + changeset.Comment + " - " + link.ToString()); workItems.AddRange(changeset.WorkItems); } foreach (var item in workItems) { var link = hyperlinker.GetWorkItemEditorUrl(item.Id); Console.WriteLine("WI#" + item.Id + " - " + item.Title + " - " + link.ToString()); } Console.ReadLine(); 
+3
source

All Articles