Если люди хотят знать, где найти последние сборки, я думаю, что лучше всего рассказать им, где находится место сброса и как называются сборки, чтобы они могли легко определить, какая из них является самой последней. Если вы хотите скопировать вывод местоположения отбрасывания в тот же каталог, вам нужно будет создать собственный шаблон (путем изменения шаблона по умолчанию), который будет запускать вашу сборку. Во время моей сборки, после того, как файлы скопированы в место размещения, я выполняю сценарий для копирования файлов из места размещения в общий каталог «Последние». Однако вы можете легко столкнуться с проблемами, когда люди обращаются к файлам в каталоге «Latest» во время выполнения сборки, и поэтому сборка завершается неудачно, поскольку она не может перезаписать эти файлы.
Если вы хотите определить расположение последней успешной сборки, вы также можете сделать это программно. Ниже приведен фрагмент пользовательского действия, которое я написал для этого:
string tfsUri = "http://pathToTfsServer:8080/tfs";
string projectName = "MyTfsProject";
string buildDefinition = "MyTfsBuildDefinitionName";
// connect to the Project and query the builds of the BuildDefinition
var tfs = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(tfsUri), new UICredentialsProvider());
tfs.EnsureAuthenticated();
var buildServer = tfs.GetService<IBuildServer>();
var buildDetails = buildServer.QueryBuilds(projectName, buildDefinition);
// sort builds based on start time
Array.Sort(buildDetails, delegate(IBuildDetail build1, IBuildDetail build2)
{
return build1.StartTime.CompareTo(build2.StartTime);
});
// return only the last successful build that currently exists
for (int i = buildDetails.Length - 1; i >= 0; i--)
{
if (buildDetails[i].Status == BuildStatus.Succeeded && buildDetails[i].IsDeleted == false)
return buildDetails[i];
}
Если вы хотите настроить Team Build 2010, то я предлагаю прочитать учебные пособия Эвальда Хоффмана по теме .