Jak znaleźć i wyświetlić zestaw zmian TFS według tekstu komentarza?

130

W TFS muszę znaleźć zestaw zmian według komentarza i / lub programisty. Może jestem dzisiaj po prostu ślepy, ale w Eksploratorze kontroli źródła nie widzę prostego sposobu wykonania tego zadania?

Ralph Shillington
źródło
Teraz w VSTS / najnowszym TFS możesz teraz filtrować zatwierdzenia według autora w historii zmian, ale wydaje się, że nadal nie możesz filtrować / wyszukiwać komentarzy dotyczących zmian ... Właściwie nie rozumiem, jak nie można tego zaproponować, utworzyłem żądanie na uservoice: visualstudio.uservoice.com/forums/ ...
Sÿl

Odpowiedzi:

21

Po zainstalowaniu elektronarzędzi:

tf history $/ -r | ? { $_.comment -like '*findme*' }
Richard Berg
źródło
3
Przepraszam za moją ignorancję, ale co to jest „?” polecenie, do którego przesyłasz wynik tfhistory?
Mal Ross
3
To standardowy alias dla Where-Object. Aby uzyskać szczegółowe informacje, zobacz „help where -full”.
Richard Berg
4
Nie działa to bezpośrednio po cmd.exemonicie, ale działa w konsoli PowerShell (z kilkoma poprawkami do formatu parametru -like).
Emyr
166

Jeśli masz zainstalowane narzędzia TFS Power Tools, możesz uruchomić to w wierszu polecenia:

tfpt searchcs

aby uzyskać okno GUI z opcjami wyszukiwania według tekstu committera i komentarza. Używam narzędzi TFS Power Tools (wersja z marca 2011 r.) I TFS 2010.

Kent Hu
źródło
4
To zadziałało dla mnie, z pewnym szarpaniem na ustawieniach. Server name: mój format adresu URL serwera to tfs01: 8080 / tfs , który znalazłem w VS2010, menu Zespół, Połącz z serwerem Team Foundation Server, przycisk Serwery ... i był już istniejący serwer. Under server path:Zauważyłem, że naprawdę szuka lokalnej ścieżki mapy, więc był to C: \ tfs \ myfolders \ etc, a nie ścieżka url z punktu widzenia serwera.
goodeye
1
Stackoverflow przekonwertował mój powyższy komentarz dotyczący formatu adresu URL na link. To naprawdęhttp://tfs01:8080/tfs
goodeye
Pracowałem dla mnie z VS2010, mimo że TFS to 2008. Najnowsza wersja TFPT2010, sierpień 2011
Paul Kapustin
1
Działa również w programie Visual Studio 2012 z TFS 2012.
jessegavin
2
To zadziałało dla mnie z cmd.exe, ale nie z okna poleceń VS.
rstackhouse
101

ŁATWY SPOSÓB i żadne aplikacje / dodatki innych firm nie są potrzebne:

  1. Eksplorator Open Source Control
  2. „Wyświetl historię” z katalogu głównego serwera TFS
  3. Przewiń w dół (jest szybki dzięki ciągłemu naciskaniu przycisku „End”)
  4. Wybierz wszystkie rekordy, skopiuj
  5. Otwórz Excel i wklej

Teraz Excel pozwoli ci przeszukiwać komentarze (Excel to natywna aplikacja, nie kłóć się ...).

Ani
źródło
15
Nie sądzę, że będziesz przeszukiwać całą wiadomość o zmianach w celu znalezienia dłuższych wiadomości za pomocą tej metody (zwróć uwagę na wielokropki obecne podczas wklejania), co byłoby przydatne, jeśli jesteś pewien, że szukasz czegoś w pierwszym -line streszczenie, ale poza tym niebezpieczne.
1
taki prosty i zerowy sposób konfiguracji
Mostafa Armandi
5
Przyznaję, że na początku wzdrygnąłem się, kiedy po raz pierwszy to przeczytałem, ale potem powiedziałem, że do cholery z narzędziami innych firm, ten pomysł działa dobrze. Dziękuję Ci!
Chris Hawkes
3
Nie jest to rozwiązanie, gdy masz ponad 100 000 zestawów zmian
Diogo Luis
3
To smutne, że muszę to zrobić. ;)
Kai Hartmann
20

Istnieje dodatek programu Visual Studio, który teraz to robi: http://visualstudiogallery.msdn.microsoft.com/3f65dee8-5a44-4771-929b-26531c482fbf .

David
źródło
3
Szkoda, że ​​nie jest dostępny na VS 2012 i VS 2013
Andrija
2
Jeśli przejdziesz do witryny CodePlex projektu, znajdziesz wersję VS2012 (której nie testowałem). findchangeset.codeplex.com
Maarten
2
Ale szczerze mówiąc, używanie tfpt searchcsjest łatwiejsze.
Maarten
Aha, tak. Używałem go wcześniej, ale nie pamiętałem, jak to zacząłem, lol. Po prostu uruchamiasz Visual Studio Command Prompti wykonujesz polecenie @Maarten wymienione powyżej. Oczywiście najpierw zainstalowałbyś elektronarzędzia!
strider
15

Alternatywnie, bez konieczności instalowania elektronarzędzi, poniższe polecenie zadziała, jeśli szukasz wyszukiwanego terminu findme .

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

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

NB . Proszę, podziękuj temu facetowi, jeśli okaże się to przydatne.

Christo
źródło
2
dodaj „/ format: szczegółowy”, jeśli chcesz przeszukać całą wiadomość. Jeśli trwa to zbyt długo, ustaw granice dat (np. „/ V: D1 / 1/2012 ~ D12 / 31/2012”), aby zmniejszyć przestrzeń wyszukiwania.
8

Możesz użyć klienta wiersza poleceń: prześlij dane wyjściowe historii tf do pliku, a następnie użyj dowolnego preferowanego programu wyszukiwania.

stuartd
źródło
5
przykład: tf history $ / / r / user: nazwa użytkownika / format: szczegółowe> d: \ changeset_details.txt
ray
2

Nie wiem, jak to zrobić za pomocą tekstu komentarza, ale pozwoli to na wyszukiwanie przez programistę:

Jeśli otworzysz pozycję menu Plik-> Kontrola źródła-> Znajdź w kontroli źródła-> Zestawy zmian ... (musisz być w Eksploratorze kontroli źródła, aby było to dostępne). Otworzy się okno dialogowe Znajdź zestawy zmian. Następnie możesz wyszukiwać zestawy zmian według programisty w danym folderze źródłowym (lub projekcie).

Spowoduje to wyświetlenie komentarzy, ale nie możesz ich wyszukiwać. (Chociaż możesz sortować listę według komentarzy i znaleźć komentarz, którego szukasz).

Na marginesie, jeśli chcesz zobaczyć szczegóły zestawu zmian w tym oknie dialogowym, musisz kliknąć przycisk Szczegóły. Dwukrotne kliknięcie zestawu zmian zamyka okno dialogowe.

Vaccano
źródło
1
@Downvoter - Dlaczego głos przeciwny? OP powiedział „i / lub programista”. To jest „Odpowiedź programisty”.
Vaccano
2

Aby zobaczyć zameldowania członka zespołu:

W Eksploratorze zespołu przejdź do projektu zespołowego, przejdź do członków zespołu, kliknij prawym przyciskiem myszy członka zespołu, dla którego chcesz zobaczyć zestawy zmian, i wybierz opcję „Pokaż historię rejestracji”.

Phillip Ngan
źródło
2

Dodałem tfpt searchcsz TFS Power Tools jako zewnętrzne narzędzie w VisualStudio:

  • Polecenie: C:\Program Files (x86)\Microsoft Team Foundation Server 2015 Power Tools\TFPT.EXE (lub gdziekolwiek zainstalowałeś swoje narzędzia TFS Power Tools)
  • Argumenty: searchcs /collection:http://tfsserver:8080/tfs $(SolutionDir) (ścieżka rozwiązania jest konwertowana na ścieżkę serwera)
  • Katalog początkowy: c:\path\to\your\vs\IDE(chyba że tf.exeznajduje się w Twojej ścieżce (co nie ma miejsca domyślnie), dzięki czemu możesz wyświetlić szczegóły zestawu zmian z okna dialogowego wyszukiwania, ponieważ działa tf.exe)
Spock
źródło
1

Udało mi się to zrobić w sekcji kodu portalu internetowego TFS.

Przejdź do TFS w przeglądarce, przejdź do kodu, kliknij zestawy zmian, a następnie zaawansowane wyszukiwanie. Możesz filtrować według użytkownika i zakresu dat. Nie możesz wyszukiwać według komentarzy, ale jeśli masz na myśli ogólny zakres dat, możesz go odfiltrować, a następnie użyć wyszukiwania w przeglądarce (ctrl + f).

Wyrównany
źródło
Jest to o wiele łatwiejsze niż kopiowanie do programu Excel. Jak dotąd najlepsza odpowiedź, IMHO. Nie musisz nawet wpisywać zakresu dat; po prostu kliknij znajdź, a otrzymasz wszystkie zestawy zmian; z komentarzami.
Protector One
1
Nie ma dla mnie wyszukiwania zaawansowanego: /
Twometer
musiało się przenieść lub zmienić od 2015 roku.
Wyrównane