Расположение комментариев ревизии на сервере Team Foundation? - PullRequest
3 голосов
/ 29 июня 2011

Один из моих коллег работает над сценарием сборки Continuous Integration, который создает новую сборку каждый раз, когда разработчик делает проверку, и отправляет электронное письмо команде разработчиков после завершения сборки. Мы хотим получить любые комментарии, связанные с регистрацией (те же комментарии, которые вы увидите, щелкнув правой кнопкой мыши файл проекта и выбрав Просмотр истории), и включить их в электронное письмо. Однако мы не уверены, где в серверной части TFS указывать скрипт, чтобы он мог получить эти комментарии. Кто-нибудь знает, где мы должны искать?

1 Ответ

4 голосов
/ 29 июня 2011

Используете ли вы TFS API для этого?Если это так, вы просто делаете:

TeamFoundationServer tfs = TeamFoundationServerFactory.GetServer("http://WhateverServerUrl");
IBuildServer buildServer = (IBuildServer)tfs.GetService(typeof(IBuildServer));
VersionControlServer VsServer = (VersionControlServer)tfs.GetService(typeof(VersionControlServer));
IBuildDetail build = buildServer.GetAllBuildDetails(new Uri("http://WhateverBuildUrl"));

List<IChangesetSummary> associatedChangesets = InformationNodeConverters.GetAssociatedChangesets(build);

foreach (IChangesetSummary changeSetData in associatedChangesets)
{
    Changeset changeSet = VsServer.GetChangeset(changeSetData.ChangesetId);
    string x = changeSet.Comment;
} 

Если вы пытаетесь найти его в БД, вы можете посмотреть заголовок набора изменений:

USE tfs_warehouse
SELECT [ChangesetID]
      ,[ChangesetTitle]
  FROM [tfs_warehouse].[dbo].[DimChangeset]

Отсюда добавьте гдек идентификатору, дате и т. д.

Это место, где эти данные хранятся в TFS 2010.

В TFS 2008 вы должны использовать TfsWarehouse и посмотреть на столбец Changset dbo.ChangeSet.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...