Udostępnij za pośrednictwem


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, repolub 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

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.

Zrzut ekranu przedstawiający gałęzie usługi Git na potrzeby konfiguracji.

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.

Następne kroki