TFS 2008: запрос наборов изменений пользователем и экспорт информации в Excel

Кажется, это не вопрос или ответ по этому поводу. Мне нужно использовать TFS2008 для запроса наборов изменений пользователя и экспорта результатов в Excel.

Загвоздка в том, что мне нужен не только номер набора изменений, пользователь и дата регистрации, но мне также нужны файлы, затронутые регистрацией. Ничего не стоит, что у меня есть коллега, который представил результаты аналогичного запроса, который он сделал некоторое время назад, но он не может вспомнить, как это было сделано.

Я использовал Ctrl+G из Source Control Explorer для запроса наборов изменений, но это диалоговое окно не позволит мне экспортировать в Excel и не покажет мне затронутые файлы, если я дважды не щелкну набор изменений. Было бы очень трудоемко пытаться написать все это вручную, кликая по диалоговым окнам. Может быть, есть способ сделать это с помощью утилиты Work Item Query? Любая помощь будет оценена по достоинству.

Ниже приведен пример формата, который мне нужен:

введите здесь описание изображения

Спасибо.


person MegaMatt    schedule 14.07.2011    source источник


Ответы (2)


Надеется, что это может помочь вам

SELECT TOP 10
V.ChildItem AS [File Modified],
V.Command AS [Check-In-Action],
V.ParentPath AS [Modified File Path],
CS.ChangeSetId,
CS.CreationDate AS [Date]
FROM tbl_Changeset CS
INNER JOIN tbl_Identity I ON I.IdentityID = CS.OwnerID
INNER JOIN tbl_Version V ON V.VersionFrom = CS.ChangesetID
ORDER BY CS.CreationDate DESC

Здесь V.Command означает

* Edit = 2
* Type = 4
* Add folder = 5
* Add file = 7
* Rename = 8
* Rename,edit = 10
* Delete = 16
* Delete,rename = 24
* Undelete = 32
* Undelete,edit = 34
* Branch = 68
* Branch,delete = 84
* Merge = 128
* Merge, edit = 130
* Merge,type,edit = 134
* Merge, rename, edit = 138
* Merge,delete = 144
* Merge,delete,rename = 152
* Merge,undelete = 160
* Merge,undelete,edit = 162
* Merge,branch = 196
* Merge,branch,edit = 198
person Sunil Agarwal    schedule 26.09.2011

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

Имена файлов могут не быть найдены в хранилище TFS, потому что это слишком много деталей, чтобы содержаться в хранилище, поэтому вам, возможно, придется запрашивать фактическую базу данных TFS напрямую. Здесь стоит отметить, что «прямой доступ к базе данных TFS» не рекомендуется и не поддерживается/не документируется Microsoft, но вы должны делать то, что должны делать. (Будьте осторожны, никогда ничего не меняйте в БД)

Я попытался создать для вас пример запроса, но я использую TFS2010. Схемы БД и хранилища сильно изменились в TFS 2010, поэтому мой запрос вам ничем не поможет.

Если вам удастся построить запрос, вы можете запустить его через Excel и получить результаты прямо в Excel.

person e-mre    schedule 29.07.2011