Funkcjonalne wyszukiwanie kodu
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Znajdź potrzebny kod szybciej z funkcjonalną wyszukiwarką kodu. W tym artykule wyjaśniono, jak uściślić wyszukiwanie między repozytoriami przy użyciu typów kodu i innych funkcji za pomocą rozszerzenia wyszukiwania kodu Marketplace dla usługi Azure DevOps.
Warunki wstępne
Kategoria | Warunek wstępny |
---|---|
poziomy dostępu | — Aby użyć funkcji wyszukiwania kodu: co najmniej dostęp na poziomie Podstawowym. — Aby uzyskać dostęp do kodu w projekcie prywatnym: co najmniej dostęp podstawowy. Dostęp uczestników projektu nie zawiera kodu. - Aby uzyskać dostęp do kodu w projekcie publicznym: co najmniej interesariusz dostęp. |
wyniki wyszukiwania | wyniki oparte na dostępie: podczas wyszukiwania w organizacji lub kolekcji są wyświetlane tylko wyniki, dla których członek projektu ma dostęp. |
Kategoria | Wymagania |
---|---|
poziomy dostępu | — Aby użyć funkcji wyszukiwania kodu: co najmniej dostęp na poziomie Podstawowym. — Aby uzyskać dostęp do kodu w prywatnym projekcie: wymagany jest co najmniej dostęp w warstwie Podstawowa. Dostęp uczestników projektu nie zawiera kodu. |
wyniki wyszukiwania | wyniki oparte na dostępie: podczas wyszukiwania w organizacji lub kolekcji są wyświetlane tylko wyniki, dla których członek projektu ma dostęp. |
narzędzi | rozszerzenie wyszukiwania kodu |
Najlepsze rozwiązania dotyczące wyszukiwania kodu
- Rozpocznij szeroko: Rozpocznij od szerokiego wyszukiwania, a następnie użyj operatorów filtrów, aby zawęzić je według projektu, repozytorium, ścieżki, nazwy pliku i nie tylko.
- Użyj symboli wieloznacznych i operatorów logicznych : Jeśli nie znasz dokładnego terminu, użyj symboli wieloznacznych, aby rozszerzyć wyszukiwanie, a operatorów logicznych, aby je uściślić.
- Zatrzymaj wskaźnik myszy, aby uzyskać więcej informacji: Aby uzyskać więcej informacji na temat elementu kodu, umieść kursor nad nim i użyj menu skrótów, aby wyszukać ten tekst we wszystkich projektach i plikach.
- funkcje śledzenia kodu: Użyj menu skrótów, aby wyszukać powiązane elementy, takie jak definicje i odwołania w pliku lub w wynikach wyszukiwania, aby śledzić sposób działania kodu.
-
Użyj filtrów typu kodu: Aby znaleźć implementację interfejsu API lub innego elementu kodu, użyj filtrów typu kodu, aby wyszukać określone rodzaje kodu, takie jak:
- Definicje
- Bibliografia
- Funkcje
- Komentarze
- Ciągi
- Przestrzenie nazw i inne
Notatka
Wyszukiwanie kodu nie działa w przypadku rozwidlonych repozytoriów.
Funkcje do znajdowania określonych typów kodu
Aby szybciej utworzyć zapytanie, wybierz funkcje i słowa kluczowe z listy rozwijanej podczas wprowadzania tekstu. Wybierz pozycję Pokaż więcej, aby wyświetlić wszystkie opcje. W razie potrzeby można połączyć różne funkcje.
Możesz również użyć filtrów z lewej kolumny, aby zawęzić wyszukiwanie. Pokaż więcej pokazuje wszystkie funkcje i słowa kluczowe.
Możesz też wpisać funkcje i parametry w polu wyszukiwania. W poniższej tabeli wymieniono funkcje do znajdowania określonych typów lub elementów w kodzie C#, C, C++, Java i Visual Basic.NET.
Aby znaleźć kod, w którym findThis pojawia się jako ... | ... wyszukaj argument arg:findThis |
---|---|
Argument |
arg:findThisDeprecated in July 2019 |
Typ podstawowy | typ podstawowy:findThis |
Wywoływanie funkcji |
wywołujący:findThisDeprecated in July 2019 |
Definicja lub deklaracja klasy | klasa :findThis |
Deklaracja klasy |
classdecl:findThisMerged with class: |
Definicja klasy |
classdef:findThisMerged with class: |
Komentarz | komentarz:findThis |
Konstruktor |
ctor:findThisMerged with method: |
Deklaracja | decl:findThis |
Definicja | def:findThis |
Destruktor |
dtor:findThisMerged with method: |
Moduł wyliczający | wyliczenie :findThis |
Extern |
extern:findThisDeprecated in July 2019 |
Pole | pole :znajdzTo |
Funkcja friend |
przyjaciel:findThisDeprecated in July 2019 |
Funkcja |
func:findThisMerged with method: |
Deklaracja funkcji |
funcdecl:findThisMerged with method: |
Definicja funkcji |
funcdef:findThisMerged with method: |
Globalny |
globalne:findThisDeprecated in July 2019 |
Nagłówek | nagłówek :findThisDeprecated in July 2019 |
Interfejs | interfejs :findThis |
Makro | makro :findThis |
Definicja makra |
makrodef:findThisMerged with macro: |
Odwołanie do makr |
makroref:znajdźToMerged with macro: |
Metoda | metoda :findThis |
Deklaracja metody |
methoddecl:findThisMerged with method: |
Definicja metody |
methoddef:findThisMerged with method: |
Namespace | przestrzeni nazw:findThis |
Własność | prop:findThis |
Odniesienie | ref:findThis |
Literał ciągu | strlit:findThis |
Struktura | struktura :findThisMerged with type: |
Deklaracja struktury |
structdecl:findThisMerged with type: |
Definicja struktury |
structdef:findThisMerged with type: |
Argument szablonu |
tmplarg:findThisDeprecated in July 2019 |
Specyfikacja szablonu |
tmplspec:findThisDeprecated in July 2019 |
Typ | typ :findThis |
Typedef |
typedef:findThisMerged with type: |
Unia |
unii:findThisDeprecated in July 2019 |
Funkcje do wybierania projektów, repozytoriów, ścieżek i plików
Funkcje ułatwiają zawężenie wyszukiwania do określonych lokalizacji, określonych typów plików w tych lokalizacjach lub określonych nazw plików. Zawęź wyszukiwanie do określonej lokalizacji przy użyciu filtrów proj
, repo
lub path
. Wymieszaj i dopasuj następujące funkcje zgodnie z wymaganiami.
Użycie | Przykład |
---|---|
Znajdź wszystkie wystąpienia słowa QueueJobsNow w projekcie Fabrikam. | QueueJobsNow proj:Fabrikam |
Znajdź wszystkie wystąpienia wyrazu QueueJobsNow w repozytorium Contoso. | QueueJobsNow repo:Contoso |
Znajdź wszystkie wystąpienia wyrazu QueueJobsNow w ścieżce VisualStudio/Services/Framework i jego ścieżki podrzędne. | QueueJobsNow path:VisualStudio/Services/Framework |
Znajdź wszystkie wystąpienia wyrazu QueueJobsNow w ścieżce */Doc*/Framework/* i */Doc*/*/Framework/* i jego ścieżki podrzędne. Wzorzec globbingowy (**) odpowiada zeru lub większej liczbie znaków w różnych segmentach. Na przykład ścieżka:**/Doc**/Framework jest również zgodna z abc/DocTest/gh/ijk/mnop/Framework/ | QueueJobsNow path:**/Doc**/Framework |
Znajdź wszystkie wystąpienia wyrazu QueueJobsNow w ścieżce */Doc*/Framework/* oraz jego ścieżki podrzędne i nazwę pliku Test*.txt (Użyj wzorca Globbing **). Na przykład, ścieżka:**/Doc**/Framework/**/Test*.txt również pasuje do abc/def/DocA/gh/Framework/TestMisc.txt. | QueueJobsNow path:**/Doc**/Framework/**/Test*.txt |
Ujęć argument w filtrze w cudzysłowach, jeśli zawiera spację. | QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services" |
Znajdź wszystkie wystąpienia wyrazu QueueJobsNow we wszystkich plikach, w których nazwa pliku rozpoczyna się od queueRegister. | QueueJobsNow file:queueRegister* |
Znajdź wszystkie pliki o nazwie QueueRegister bez rozszerzenia. Użyj cudzysłowów, aby znaleźć pliki bez rozszerzeń. | file:"queueRegister" |
Znajdź wszystkie wystąpienia wyrazu QueueJobsNow tylko w plikach źródłowych języka C#. Ciąg wyszukiwania w postaci zwykłego tekstu, który nie zawiera funkcji typu pliku, również znajduje pliki, w których ciąg pasuje do części nazwy pliku. | QueueJobsNow ext:cs |
Znajdowanie powiązanych elementów lub innych terminów
Wyszukiwanie kodu umożliwia interaktywne rozszerzanie wyszukiwania na podstawie poprzednich wyników. Możesz na przykład rozszerzyć wyszukiwanie na powiązane pliki podczas śledzenia lub debugowania kodu.
Kliknij prawym przyciskiem myszy termin w pliku i rozpocznij nowe wyszukiwanie innych plików z tym samym terminem. Możesz wyszukać go jako tekst lub definicję lub odwołanie, jeśli jest to nazwa obiektu.
Aby uzyskać więcej informacji, zobacz Wprowadzenie do wyszukiwania.
Więcej operacji wyszukiwania kodu
Oto kilka funkcji wyszukiwania kodu. Typy kodu można wyszukiwać w plikach C#, C, C++, Java i Visual Basic.NET. Aby otworzyć wyniki wyszukiwania na nowej karcie, wybierz pozycję Ctrl + Wprowadź w głównym polu wyszukiwania. Aby przełączyć się na nową kartę w przeglądarce Google Chrome, wybierz Ctrl + Shift + Enter.
Zastosowanie | Przykład |
---|---|
Znajdź wszystkie komentarze | Historia:Słowo kluczowe |
Znajdź wszystkie wystąpienia komentarzy "ToDo" w swoim kodzie | Wybierz pozycję comment: i wprowadź todo |
Wyszukiwanie w określonych lokalizacjach, takich jak w określonej ścieżce | Używanie ciągu wyszukiwania, takiego jak Driver path:MyShuttle/Server |
Wyszukiwanie plików według nazwy lub tylko według rozszerzenia pliku |
Driver file:GreenCabs.cs . Ciąg wyszukiwania error ext:resx może być przydatny, jeśli chcesz przejrzeć wszystkie ciągi błędów w kodzie. Nawet jeśli ciąg wyszukiwania w postaci zwykłego tekstu pasuje do części nazwy pliku, plik zostanie wyświetlony na liście znalezionych plików. To wyszukiwanie działa bez dopasowywania określonych funkcji typów plików. |
Wyszukiwanie projektów i repozytoriów Git
Projekt Git zawiera listę repozytoriów. Aby rozwinąć wyszukiwanie, zaznacz pola projektu i repozytorium. Możesz przeszukiwać wszystkie lub więcej projektów lub mniej projektów i repozytoriów. Jeśli istnieje wiele projektów lub repozytoriów, wybierz pozycję Pokaż więcej, aby wyświetlić je wszystkie.
Wyszukiwanie kodu może indeksować różne gałęzie w repozytorium Git. Indeksuje tylko pliki w domyślnej gałęzi repozytoriów Git. Gałąź domyślna jest główna. Aby indeksować inne gałęzie, przejdź do karty Opcje w sekcji Repozytoria strony ustawień projektu .
Notatka
Domyślnie wyszukiwanie kodu wyszukuje określony ciąg w gałęzi głównej lub domyślnej repozytorium. Można jednak zawęzić wyszukiwanie, określając filtr dla określonej gałęzi.
Wyszukiwanie projektów TFVC
Projekty Kontroli wersji programu Team Foundation (TFVC) wyświetlają tylko foldery, które można odczytać. Nie widzisz żadnych innych projektów ani folderów. Aby filtrować wyszukiwanie, wybierz foldery z drzewa.
Napiwek
Wyszukiwanie kodu zapisuje ostatnie ustawienia, takie jak projekt i repozytorium lub ścieżka, w której wyszukiwano. Jeśli chcesz wyszukać w innym zakresie, wybierz pozycję Wyczyść wszystkie linki, aby wyczyścić pola wyboru i wyszukać we wszystkich projektach. Pierwsze 100 trafienia lub dopasowania w plikach docelowych zostanie wyróżnionych przez Code Search w okienku wyników.
Wyszukiwanie kodu za pomocą interfejsu API REST
Możesz użyć interfejsów API, aby rozszerzyć lub uzupełnić możliwości wymienione w tym artykule. Aby uzyskać informacje o wyszukiwaniu kodu za pomocą interfejsu API REST, zobacz Pobieranie wyników wyszukiwania kodu.