2010-07-27 3 views
4

Я пытаюсь получить последнюю версию набора изменений в TFS MSBuild. Я пробовал ряд решений и ссылался на TFS and msbuild version number with last changeset без желаемого результата. Любые другие идеи?TFS и MSBuild: как получить последнюю версию набора изменений

  1. Некоторые записи в блоге/примеры показывают, используя «тс ревизии/последний/я MsBuild», однако я не могу найти документацию о том, как получить желаемое значение в свойство внутри XML-файла MSBuild.

  2. Другие примеры предлагают использовать пакет расширения msbuild, однако документация не завершена, а свойство «changesets» ниже выглядит пустым.

См: http://social.msdn.microsoft.com/Forums/en/msbuild/thread/3fd46d76-2544-4818-b504-0fa2fc1e5c6a

<MSBuild.ExtensionPack.Tfs.TeamBuild TaskAction="RelatedChangesets" TeamFoundationServerUrl="$(TeamFoundationServerUrl)" TeamProject="$(TeamProject)" BuildUri="$(BuildUri)" BuildDefinitionName="$(BuildDefinitionName)"> 

    <Output ItemName="changesets" TaskParameter="RelatedItems"/> 
    </MSBuild.ExtensionPack.Tfs.TeamBuild> 
    <Message Text="ID = %(Changesets.Identity), Checked In By = %(Changesets.CheckedInBy), URI = %(Changesets.ChangesetUri), Comment = %(Changesets.Comment)"/> 

Это Выдает: Задача "Сообщение" "ID =, Возвращен К =, URI =, комментарий ="

Было также предложено Я использую следующее после задачи teambuild выше, но опять же, поскольку свойство «changeets» пустое, я получаю сообщение об ошибке:

Refer to: http://social.msdn.microsoft.com/Forums/en/msbuild/thread/9ac51ffe-137f-4d55-87e1-6fbbc401aab1

<!-- Get the last item --> 
    <MSBuild.ExtensionPack.Framework.MsBuildHelper TaskAction="GetLastItem" InputItems1="@(changesets)"> 
    <Output TaskParameter="OutputItems" ItemName="LastItem"/> 
    </MSBuild.ExtensionPack.Framework.MsBuildHelper> 
    <Message Text="Last Item: %(LastItem.Identity)"/> 

редактировать: правильный код и добавить ссылки на ссылки

+0

У меня возникли проблемы с отображением кода, я попробую это здесь. 1: davewilliams459

+0

(извините за ужасное форматирование. 2: <Текст сообщения =" Последний элемент: % (LastItem.Identity) "/> – davewilliams459

+0

Вы хотите помочь поддержать сообщество ALM Visual Studio на Stack Exchange? http://bit.ly/caQ9ds –

ответ

3

Если вы использовали Team Build 2010, вы можете использовать BuildDetail.SourceGetVersion. Это просто дает вам номер набора изменений.

+0

Спасибо, да, мы надеемся скоро перейти на 2010 год, но, конечно, это не вариант на данный момент. – davewilliams459