TFS - получить диапазон изменений - PullRequest
5 голосов
/ 02 марта 2010

В каждом выпуске я считаю хорошей практикой возвращаться и брать все заметки о ревизиях, чтобы сравнить их с заметками о выпуске, чтобы убедиться, что мы ничего не пропустили. Поскольку у нас есть все изменения функций, которые хорошо документированы в заметках об изменениях, они являются ценным ресурсом.

То, что я не нашел, это хороший способ извлечь их из TFS 2008. Что я пробовал:

  • Окно истории VS: Это обеспечивает только первые 100 символов или около того, усеченный стиль эллипса.
  • TFS Powertools: Может быть, я что-то упустил, но я не могу получить выходной формат, который не включает разделение строк в комментариях, поэтому создание чего-либо пригодного для использования выглядит как PITA, но может быть, решение PowerShell было бы идеально здесь?

То, что я ищу, довольно просто:

  • рецензии на комментарии
  • ID
  • Дата
  • Имя пользователя, если возможно

Это в определенном диапазоне ... независимо от того, ограничено ли оно датами или идентификаторами, все в порядке. Если бы я мог ограничить его в пределах определенной ветви в проекте, это было бы огромным бонусом.

Теперь, чтобы получить эти данные, я открываю TFS SQL Server напрямую и запускаю его в базе данных TfsVersionControl:

SELECT    ChangeSetId, CreationDate, Comment
FROM      tbl_ChangeSet
WHERE     ChangeSetId > 6300

Я пытался, но не нашел хорошего ресурса для этого, кажется, вся большая информация о TFS, которая была в блогах Vertigo, была потеряна, так как ссылки теперь мертвы. У кого-нибудь есть лучший / вменяемый способ извлечь эту информацию? Формат не важен, все в табличном / xml / любом формате, который я могу преобразовать в удобочитаемую, работает.

Дополнительное примечание: Мы обновляемся до VS 2010 примерно через неделю после выпуска ... если ответ только VS2010 / TFS2010, это даже лучше, поскольку это долгосрочное решение.

Ответы [ 2 ]

9 голосов
/ 02 марта 2010

Team Foundation Power Tools (октябрь 2008 г.) поставляется с оснасткой PowerShell (32-разрядная, только если вы используете Windows x64). Попробуйте это:

Add-PSSnapin Microsoft.TeamFoundation.PowerShell
Get-TfsItemHistory . -Recurse -Version C57460~58090 | 
    fl Comment,ChangesetId,CreationDate,Committer


Comment      : Added printf's in a couple of event callbacks
ChangesetId  : 58090
CreationDate : 2/25/2010 1:46:09 PM
Committer    : ACME\johndoe
...

Это сохраняет новые строки в комментариях. Если вы работаете в 64-разрядной версии Windows, убедитесь, что вы запускаете ее из 32-разрядной (x86) командной строки PowerShell.

0 голосов
/ 05 июня 2012

Этот проект с открытым исходным кодом http://tfschangelog.codeplex.com предназначен для того, чтобы пользователи могли задавать диапазон наборов изменений и генерировать примечания к выпуску на основе комментариев chnageset и связанных рабочих элементов для каждого набора изменений в данном диапазоне.

TFS ChangeLog извлекает информацию в XML, а затем использует XSLT 2.0 для преобразования ее в HTML. Пользователи могут определять свои собственные стили, фильтр, метод вывода и т. Д. Для создания полезной информации о выпуске. Фактически это открывает возможность для разработчиков и тестировщиков предоставлять содержательное содержание для ваших заметок о выпуске.

Этот инструмент поставляется в двух разных формах, включая версию для настольного компьютера и версию для командной строки. Благодаря поддержке интерфейса командной строки становится возможным планировать генерацию заметок о выпуске из планировщика Windows.

...