Funkcjonalne wyszukiwanie kodu

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Znajdź potrzebny kod szybciej z funkcjonalną funkcjonalną wyszukiwaniem kodu. W tym artykule wyjaśniono, jak uściślić wyszukiwanie między repozytoriami przy użyciu typów kodu i innych funkcji z rozszerzeniem witryny Marketplace wyszukiwania kodu dla usługi Azure DevOps.

Wymagania wstępne

Aby uzyskać więcej informacji, zobacz Instalowanie i konfigurowanie wyszukiwania.

  • Aby korzystać z funkcji wyszukiwania kodu, musisz mieć co najmniej dostęp podstawowy.
  • Użytkownicy z dostępem uczestników projektu nie mają dostępu do kodu, więc nie mogą wyszukiwać kodu.
  • Użytkownicy z dostępem uczestników projektu publicznego mają pełny dostęp do kodu, aby mogli wyszukiwać kod. Aby uzyskać dostęp do kodu w projekcie prywatnym, musisz mieć co najmniej dostęp podstawowy.
  • Podczas wyszukiwania w całej organizacji lub kolekcji są wyświetlane tylko wyniki, dla których członek projektu ma dostęp.

Najlepsze rozwiązania dotyczące wyszukiwania kodu

  • 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.
  • Jeśli nie znasz dokładnego terminu, użyj symboli wieloznacznych, aby rozwinąć operatory wyszukiwania i logiczne , aby je uściślić.
  • Aby uzyskać więcej informacji o elemencie kodu, umieść kursor nad nim i użyj menu skrótów, aby wyszukać ten tekst we wszystkich projektach i plikach.
  • Aby śledzić sposób działania 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 znaleźć implementację interfejsu API lub innego elementu kodu, użyj filtrów typu kodu, aby wyszukać określone rodzaje kodu, takie jak:
    • Definicje
    • odwołania
    • — funkcje
    • komentarze
    • ciągi
    • przestrzenie nazw i inne.

Uwaga

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 wpisywania. 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 znajdowania określonych typów lub elementów członkowskich w kodzie C#, C, C++, Java i Visual Basic.NET.

Aby znaleźć kod, w którym element findThis jest wyświetlany jako ... ... wyszukiwanie argumentu arg:findThis
Argument arg:findThisDeprecated in July 2019
Typ podstawowy basetype:findThis
Wywoływanie funkcji caller:findThisDeprecated in July 2019
Definicja lub deklaracja klasy class:findThis
Deklaracja klasy classdecl:findThisMerged with class:
Definicja klasy classdef:findThisMerged with class:
Komentarz comment:findThis
Konstruktor ctor:findThisMerged with method:
Deklaracji decl:findThis
Definicja def:findThis
Destruktor dtor:findThisMerged with method:
Moduł wyliczający enum:findThis
Extern extern:findThisDeprecated in July 2019
Pole field:findThis
Friend, funkcja friend:findThisDeprecated in July 2019
Function func:findThisMerged with method:
Deklaracja funkcji funcdecl:findThisMerged with method:
Definicja funkcji funcdef:findThisMerged with method:
Globalnie global:findThisDeprecated in July 2019
Nagłówek header:findThisDeprecated in July 2019
Interfejs interface:findThis
Makro macro:findThis
Definicja makra macrodef:findThisMerged with macro:
Odwołanie do makr macroref:findThisMerged with macro:
Method method:findThis
Deklaracja metody methoddecl:findThisMerged with method:
Definicja metody methoddef:findThisMerged with method:
Przestrzeń nazw przestrzeń nazw:findThis
Właściwości prop:findThis
Odwołanie ref:findThis
Literał ciągu strlit:findThis
Struktura struct: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 type:findThis
Typedef typedef:findThisMerged with type:
Unia union: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 projfiltrów , 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 słowa QueueJobsNow w repozytorium Contoso. QueueJobsNow repo:Contoso
Znajdź wszystkie wystąpienia słowa QueueJobsNow w ścieżce VisualStudio/Services/Framework i jego ścieżkach podrzędnych. 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 globbingu (**) pasuje do zera lub większej liczby znaków w wielu segmentach. Na przykład ścieżka:**/Doc**/Framework będzie również zgodna z narzędziem abc/DocTest/gh/ijk/mnop/Framework/ QueueJobsNow path:**/Doc**/Framework
Znajdź wszystkie wystąpienia słowa QueueJobsNow w ścieżce */Doc*/Framework/* oraz jego ścieżki podrzędne i nazwę pliku Test*.txt (Użyj wzorca globbing **). Na przykład path:**/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 słowa 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 słowa 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 na temat następujących funkcji wyszukiwania, zobacz Wprowadzenie do wyszukiwania

  • Słowo kluczowe
  • Dokładne dopasowanie
  • Symbole wieloznaczne
  • Operatory logiczne
  • Usługa zbliżeniowa

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 klawisze Ctrl + Enter w głównym polu wyszukiwania. Aby przełączyć się na nową kartę w przeglądarce Google Chrome, wybierz klawisze Ctrl + Shift + Enter.

Użycie Przykład
Znajdź wszystkie komentarze Historia:Słowo kluczowe
Znajdowanie wszystkich wystąpień komentarzy "ToDo" w kodzie Wybierz 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 error ext:resx wyszukiwania 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 zwykle główna. Aby indeksować inne gałęzie, przejdź do karty Opcje w sekcji Repozytoria strony ustawień projektu.

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

Wyszukiwanie projektów TFVC

Projekty 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 przeszukać wszystkie projekty. Pierwsze 100 trafień lub dopasowań w plikach docelowych jest wyróżnionych przez wyszukiwanie kodu 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