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?


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*' }

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.


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ę ...).


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 .


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.


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.


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.


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”.


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)

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).


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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.