Як знайти та переглянути набір змін TFS за текстом коментарів?


130

У TFS мені потрібно знайти набір змін за коментарями та / або розробником. Можливо, я просто сліпий сьогодні, але я не бачу простий спосіб у Провіднику управління джерелами зробити це завдання?


Тепер у VSTS / останньому TFS тепер ви можете фільтрувати комітети за автором у історії фіксації, але, здається, ви все ще не можете фільтрувати / шукати коментарі до комітетів ... Я насправді не розумію, як це не можна запропонувати, я створив запит on uservoice: visualstudio.uservoice.com/forums/…
'18

Відповіді:


21

При встановленому електроінструменті:

tf history $/ -r | ? { $_.comment -like '*findme*' }

3
Вибачте моє незнання, але що таке "?" команда, в яку ви записуєте результат tfhistory?
Мал Росс

3
Це стандартний псевдонім для Where-Object. Детальні відомості див. У розділі "Довідка де-повна".
Річард Берг

4
Це не працює безпосередньо під час cmd.exeзапиту, але це робиться в консолі PowerShell (з декількома налаштуваннями формату параметра -like).
Емір

166

Якщо у вас встановлені електроінструменти TFS, ви можете запустити це в командному рядку:

tfpt searchcs

щоб отримати вікно графічного інтерфейсу з опціями пошуку за текстом виконавця та коментарями. Я використовую електроінструменти TFS (версія для березня 2011 року) та TFS 2010.


4
Це працювало для мене, дещо лупаючи налаштування. Server name: мій формат URL-адреси сервера був tfs01: 8080 / tfs , який я знайшов у VS2010, командному меню, кнопці «Підключитися до сервера Team Foundation», «Сервери», і там був існуючий сервер. Under server path:Я помітив, що він дійсно шукає шлях до локальної карти, тому це був C: \ tfs \ myfolders \ тощо, а не шлях URL-адреси з точки зору сервера.
goodeye

1
Stackoverflow перетворив мій вище коментар щодо формату моєї URL на посилання. Це справдіhttp://tfs01:8080/tfs
goodeye

Працював для мене з VS2010, навіть незважаючи на те, що TFS є 2008 р. Остання версія TFPT2010, серпень 2011 р.
Пол Капустін

1
Працює у Visual Studio 2012 і з TFS 2012.
jessegavin

2
Це працювало для мене з cmd.exe, але не з вікна команд VS.
rstackhouse

100

ПРОСТИЙ ШЛЯХ і не потрібно додатків / додатків сторонніх розробників:

  1. Провідник з відкритим вихідним кодом
  2. "Переглянути історію" з кореня сервера TFS
  3. Прокрутіть донизу (це швидко натискаючи кнопку "Завершити")
  4. Виберіть усі записи, скопіюйте
  5. Відкрийте Excel і вставте

Тепер Excel дозволить шукати коментарі (Excel - це рідний додаток, не сперечайтесь ..).


14
Я не думаю, що ви будете шукати все повідомлення про фіксацію довгих повідомлень про фіксацію за допомогою цього методу (зверніть увагу на еліпси, наявні під час вставки), що зробить це корисним, якщо ви впевнені, що шукаєте щось у першому -лінійний конспект, але небезпечний інакше.

1
такий простий і нульовий спосіб конфігурації
Мостафа Арманді

5
Зізнаюсь, спочатку я сховався, коли вперше прочитав це, але потім сказав, що чортів із сторонніми інструментами, ця ідея працює чудово. Дякую!
Кріс Хоукс

3
Це не є рішенням, коли у вас є більше 100 000 наборів змін
Diogo Luis

3
Сумно, що я маю це робити. ;)
Кай Хартманн

20

Є надбудова Visual Studio, яка робить це зараз: http://visualstudiogallery.msdn.microsoft.com/3f65dee8-5a44-4771-929b-26531c482fbf .


3
Прикро, що це не просто для VS 2012 та VS 2013
Andrija

2
Якщо ви перейдете на сайт CodePlex проекту, ви знайдете версію VS2012 (яку я не перевіряв). findchangeset.codeplex.com
Маартен

2
Але якщо чесно, використовувати tfpt searchcsпростіше.
Маартен

Ага, так. Я користувався цим раніше, але не міг згадати, як я його почав, хаха. Ви просто запускаєте Visual Studio Command Promptта виконуєте згадану вище команду @Maarten. Звичайно, ви б спочатку встановили електроінструменти!
стридер

15

Крім того, без установки електроінструментів наступна команда спрацює, якщо ви шукаєте пошуковий термін findme .

Windows: tf history "$/Team Project/Development" /noprompt /recursive | findstr findme

Linux: tf history "$/Team Project/Development" /recursive | grep findme

NB . Будь ласка, подякуйте цьому хлопцю, якщо ви вважаєте це корисним.


2
додайте "/ формат: детально", якщо ви хочете шукати все повідомлення. Якщо це триває занадто довго, встановіть межі дати (наприклад, "/ v: D1 / 1/2012 ~ D12 / 31/2012"), щоб зменшити простір пошуку.

8

Ви можете скористатися клієнтом командного рядка: передайте висновок історії tf у файл, а потім скористайтеся будь-якою програмою пошуку.


5
приклад: tf історія $ / / r / користувач: ім'я користувача / формат: детально> d: \ changeset_details.txt
ray


2

Я не знаю, як це зробити за допомогою коментаря Text, але це дозволить шукати розробником:

Якщо ви відкриєте пункт меню Файл-> Контроль джерела-> Знайти в контролі джерела-> Набори змін ... (ви повинні бути в Провіднику джерела контролю, щоб це було доступно). Це відкриє діалогове вікно Знайти набори змін. Потім можна шукати розробники наборів змін у заданій папці (або проекті).

Це покаже вам коментарі, але ви не можете їх шукати. (Хоча ви можете сортувати список за коментарями та знаходити коментар, який шукаєте саме таким чином.)

Зі сторони, якщо ви хочете побачити деталі набору змін через це діалогове вікно, вам потрібно натиснути кнопку Деталі. Подвійне клацання на наборі змін закриває діалогове вікно.


1
@Downvoter - Чому знижка? ОП сказав "та / або розробник". Це "Або відповідь розробника".
Ваккано

2

Щоб побачити чеки для члена команди:

У програмі провідника команди перейдіть до командного проекту, перейдіть до членів команди, клацніть правою кнопкою миші члена команди, якого ви хочете побачити наборам змін, і виберіть "Показати історію реєстрації".


2

Я додав tfpt searchcsіз електроінструментів TFS як зовнішній інструмент у VisualStudio:

  • Команда: C:\Program Files (x86)\Microsoft Team Foundation Server 2015 Power Tools\TFPT.EXE (або де б ви не встановили електроінструменти TFS)
  • Аргументи: searchcs /collection:http://tfsserver:8080/tfs $(SolutionDir) (шлях рішення перетворюється на шлях до сервера)
  • Початковий каталог: c:\path\to\your\vs\IDE(якщо на tf.exeвашому шляху немає (що за замовчуванням не відбувається), це гарантує перегляд деталей набору змін у діалоговому вікні пошуку, оскільки він працює tf.exe)

1

Мені вдалося це зробити в розділі коду веб-порталу TFS.

Перейдіть до TFS у своєму браузері, перейдіть до коду, натисніть на набори змін, а потім розширений пошук. Ви можете фільтрувати за користувачем та діапазоном дат. Ви не можете шукати коментарі, але якщо ви маєте на увазі загальний діапазон дат, ви можете відфільтрувати його та скористатися пошуком браузерів (ctrl + f).


Це набагато простіше, ніж копіювання в Excel. Найкраща відповідь поки що, ІМХО. Вам навіть не потрібно вводити діапазон дат; просто натисніть знайти, і ви отримаєте всі набори змін; з коментарями.
Захисник один

1
Немає розширеного пошуку для мене: /
Twometer

він повинен бути переміщений або змінився з 2015 року
уніфікований
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.