Funktionale Codesuche

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

Suchen Sie den Code, den Sie schneller benötigen, mit der Funktionscodesuche. In diesem Artikel wird erläutert, wie Sie Ihre Suche über Repositorys mit Codetypen und anderen Funktionen mit der Code Search Marketplace-Erweiterung für Azure DevOps verfeinern.

Voraussetzungen

Weitere Informationen finden Sie unter Installieren und Konfigurieren der Suche.

  • Um die Codesuche zu verwenden, müssen Sie mindestens über einfachen Zugriff verfügen.
  • Benutzer mit Stakeholder-Zugriff haben keinen Zugriff auf Code, sodass sie nicht nach Code suchen können.
  • Benutzer mit Stakeholder-Zugriff für ein öffentliches Projekt haben Vollzugriff auf Code, sodass sie nach Code suchen können. Um auf Code in einem privaten Projekt zuzugreifen, müssen Sie mindestens über einfachen Zugriff verfügen.
  • Wenn Sie in der gesamten Organisation oder Sammlung suchen, werden nur Ergebnisse aufgelistet, für die ein Projektmitglied Zugriff hat.

Bewährte Methoden für die Codesuche

  • Beginnen Sie mit einer breiten Suche, und verwenden Sie dann Filteroperatoren, um sie nach Projekt, Repository, Pfad, Dateiname und mehr einzugrenzen.
  • Wenn Sie den genauen Begriff nicht kennen, verwenden Sie wild Karte s, um Die Suche und boolesche Operatoren zu erweitern, um ihn zu verfeinern.
  • Um weitere Informationen zu einem Codeelement zu erhalten, zeigen Sie darauf, und verwenden Sie das Kontextmenü, um in allen Projekten und Dateien nach diesem Text zu suchen.
  • Um die Funktionsweise ihres Codes nachzuverfolgen, verwenden Sie das Kontextmenü, um nach verwandten Elementen wie Definitionen und Verweisen in einer Datei oder in den Suchergebnissen zu suchen.
  • Um die Implementierung einer API oder eines anderen Codeelements zu finden, verwenden Sie Codetypfilter, um nach bestimmten Codearten zu suchen, z. B.:
    • definitions
    • Verweist auf
    • functions
    • comments
    • strings
    • Namespaces und vieles mehr.

Hinweis

Die Codesuche funktioniert nicht für Verzweigungsrepositorys.

Funktionen zum Auffinden bestimmter Codetypen

Um Ihre Abfrage schneller zu erstellen, wählen Sie Funktionen und Schlüsselwort (keyword) aus der Dropdownliste während der Eingabe aus. Wählen Sie " Mehr anzeigen" aus, um alle Optionen anzuzeigen. Sie können unterschiedliche Funktionen nach Bedarf kombinieren.

Sie können auch Filter aus der linken Spalte verwenden, um die Suche einzugrenzen. Hier finden Sie weitere Informationen zu allen Funktionen und Schlüsselwort (keyword).

Sie können auch die Funktionen und Parameter in das Suchfeld eingeben. In der folgenden Tabelle sind die Funktionen zum Suchen bestimmter Typen oder Member in Ihrem C#-, C-, C++-, Java- und Visual-Basic.NET-Code aufgeführt.

Um Code zu finden, wo findThis als ... ... argument arg:findThis suchen
Argument arg:findThisDeprecated in July 2019
Basistyp basetype:findThis
Aufrufen der Funktion caller:findThisDeprecated in July 2019
Klassendefinition oder -deklaration class:findThis
Klassendeklaration classdecl:findThisMerged with class:
Klassendefinition classdef:findThisMerged with class:
Kommentar comment:findThis
Konstruktor ctor:findThisMerged with method:
Deklaration decl:findThis
Definition def:findThis
Destruktor dtor:findThisMerged with method:
Enumerator Enumeration:findThis
Extern extern:findThisDeprecated in July 2019
Feld field:findThis
Friend-Funktion friend:findThisDeprecated in July 2019
Funktion func:findThisMerged with method:
Funktionsdeklaration funcdecl:findThisMerged with method:
Funktionsdefinition funcdef:findThisMerged with method:
Global global:findThisDeprecated in July 2019
Header header:findThisDeprecated in July 2019
Schnittstelle interface:findThis
Makro macro:findThis
Makrodefinition macrodef:findThisMerged with macro:
Makroreferenz macroref:findThisMerged with macro:
Methode method:findThis
Methodendeklaration methoddecl:findThisMerged with method:
Methodendefinition methoddef:findThisMerged with method:
Namespace namespace:findThis
Eigenschaft prop:findThis
Verweis ref:findThis
Zeichenfolgenliteral strlit:findThis
Struktur struktur:findThisMerged with type:
Struct-Deklaration structdecl:findThisMerged with type:
Strukturdefinition structdef:findThisMerged with type:
Vorlagenargument tmplarg:findThisDeprecated in July 2019
Vorlagenspezifikation tmplspec:findThisDeprecated in July 2019
type type:findThis
TypeDef typedef:findThisMerged with type:
Union union:findThisDeprecated in July 2019

Funktionen zum Auswählen von Projekten, Repositorys, Pfaden und Dateien

Funktionen vereinfachen das Eingrenzen der Suche auf bestimmte Speicherorte, bestimmte Dateitypen an diesen Speicherorten oder angegebene Dateinamen. Schränken Sie die Suche mit den proj, repooder path Filtern auf einen bestimmten Speicherort ein. Mischen Sie die folgenden Funktionen nach Bedarf, und stimmen Sie sie ab.

Verwendung Beispiel
Suchen Sie alle Vorkommen des Worts QueueJobsNow im Fabrikam-Projekt. QueueJobsNow proj:Fabrikam
Suchen Sie alle Vorkommen des Worts QueueJobsNow im Contoso-Repository. QueueJobsNow repo:Contoso
Suchen Sie alle Vorkommen des Worts QueueJobsNow im Pfad "VisualStudio/Services/Framework " und deren Unterpfade. QueueJobsNow path:VisualStudio/Services/Framework
Suchen Sie alle Vorkommen des Worts QueueJobsNow im Pfad */Doc*/Framework/* und */Doc*/*/*/Framework/* und deren Unterpfade. Globbing Pattern (**) entspricht null oder mehr Zeichen über mehrere Segmente hinweg. Pfad:**/Doc**/Framework entspricht z. B. auch abc/DocTest/gh/ijk/mnop/Framework/ QueueJobsNow path:**/Doc**/Framework
Suchen Sie alle Vorkommen des Worts QueueJobsNow im Pfad */Doc*/Framework/* und dessen Unterpfade und Dateinamen Test*.txt (Verwenden Sie Globbing Pattern **). Beispiel: path:**/Doc**/Framework/**/Test*.txt stimmt auch mit abc/def/Doc A/gh/Framework/TestMisc überein.Txt QueueJobsNow path:**/Doc**/Framework/**/Test*.txt
Schließen Sie das Argument in doppelte Anführungszeichen in den Filter ein, wenn es ein Leerzeichen enthält. QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services"
Suchen Sie alle Vorkommen des Worts QueueJobsNow in allen Dateien, in denen der Dateiname mit queueRegister beginnt. QueueJobsNow file:queueRegister*
Suchen Sie alle Dateien mit dem Namen QueueRegister ohne Erweiterung. Verwenden Sie Anführungszeichen, um Dateien ohne Erweiterungen zu finden. file:"queueRegister"
Suchen Sie alle Vorkommen des Worts QueueJobsNow in nur C#-Quelldateien. Eine Nur-Text-Suchzeichenfolge, die keine Dateitypfunktionen enthält, findet auch Dateien, bei denen die Zeichenfolge mit dem Teil des Dateinamens übereinstimmt. QueueJobsNow ext:cs

Mit der Codesuche können Sie Ihre Suche interaktiv basierend auf vorherigen Ergebnissen erweitern. Sie können ihre Suche beispielsweise auf verwandte Dateien erweitern, wenn Sie Code nachverfolgen oder debuggen.

Klicken Sie mit der rechten Maustaste auf einen Ausdruck in der Datei, und beginnen Sie eine neue Suche nach anderen Dateien mit demselben Ausdruck. Sie können als Text oder als Definition oder Referenz suchen, wenn es sich um einen Objektnamen handelt.

Weitere Informationen zu den folgenden Suchfunktionen finden Sie unter "Erste Schritte mit der Suche".

  • Schlüsselwort
  • Genaue Übereinstimmung
  • Platzhalter
  • Boolesche Operatoren
  • Nähe

Weitere Codesuchvorgänge

Hier sind einige weitere Codesuchfunktionen. Sie können nach Codetypen in C#-, C-, C++-, Java- und Visual Basic.NET-Dateien suchen. Um die Suchergebnisse auf einer neuen Registerkarte zu öffnen, wählen Sie im Suchfeld Standard STRG-EINGABETASTE + aus. Um zur neuen Registerkarte in Google Chrome zu wechseln, wählen Sie STRG + UMSCHALT + EINGABETASTE aus.

Verwendung Beispiel
Suchen aller Kommentare History:Keyword
Suchen aller Instanzen von "ToDo"-Kommentaren in Ihrem Code Auswählen comment: und Eingeben todo
Suchen an bestimmten Orten, z. B. innerhalb eines bestimmten Pfads Verwenden einer Suchzeichenfolge, z. B. Driver path:MyShuttle/Server
Suchen nach Dateien nach Namen oder nur nach Dateierweiterung Driver file:GreenCabs.cs. Die Suchzeichenfolge error ext:resx kann nützlich sein, wenn Sie alle Fehlerzeichenfolgen in Ihrem Code überprüfen möchten. Auch wenn Ihre Nur-Text-Suchzeichenfolge mit einem Teil eines Dateinamens übereinstimmt, wird die Datei in der Liste der gefundenen Dateien angezeigt. Diese Suche funktioniert ohne übereinstimmende bestimmte Dateitypfunktionen.

Durchsuchen von Git-Projekten und Repositorys

Ein Git-Projekt verfügt über eine Liste von Repositorys. Um die Suche zu erweitern, aktivieren Sie die Felder "Projekt" und "Repository". Sie können alle oder mehr Projekte oder weniger Projekte und Repositorys durchsuchen. Wenn viele Projekte oder Repositorys vorhanden sind, wählen Sie "Mehr anzeigen" aus, um sie alle anzuzeigen.

Die Codesuche kann verschiedene Verzweigungen in einem Git-Repository indiziert. Standardmäßig werden nur Dateien in der Standardbranch Ihrer Git-Repositorys indiziert. Die Standardbranch wird in der Regel Standard. Um andere Verzweigungen indizieren zu können, wechseln Sie zur Registerkarte "Optionen " im Abschnitt "Repositorys " der Seite " Projekteinstellungen".

Screenshot, der Git-Verzweigungen für die Konfiguration zeigt.

TFVC-Projekte durchsuchen

TFVC-Projekte zeigen nur die Ordner an, die Sie lesen können. Sie können keine anderen Projekte oder Ordner sehen. Um Ihre Suche zu filtern, wählen Sie Ordner aus der Struktur aus.

Tipp

Die Codesuche speichert Ihre letzten Einstellungen, z. B. das Projekt und das Repository oder den Pfad, in dem Sie durchsucht haben. Wenn Sie in einem anderen Bereich suchen möchten, wählen Sie "Alle Links löschen" aus, um die Kontrollkästchen zu löschen und in allen Projekten zu suchen. Die ersten 100 Treffer oder Übereinstimmungen in den Zieldateien werden durch die Codesuche im Ergebnisbereich hervorgehoben.

Suchcode mit REST-API

Sie können APIs verwenden, um die in diesem Artikel aufgeführten Funktionen zu erweitern oder zu ergänzen. Informationen zur Codesuche mit REST-API finden Sie unter Abrufen von Codesuchergebnissen.

Nächste Schritte