Partage via


Recherche de code fonctionnelle

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

Trouvez plus rapidement le code dont vous avez besoin grâce à la recherche de code fonctionnelle. Cet article explique comment affiner votre recherche dans les référentiels en utilisant les types de code et d'autres fonctions avec l'extension Code Search Marketplace pour Azure DevOps.

Prérequis

Catégorie Prérequis
Niveaux d’accès - Pour utiliser la recherche de code : Au moins un accès de base.
- Pour accéder au code d'un projet privé : Accès de base au minimum. L’accès des parties prenantes n’inclut pas de code.
- Pour accéder au code dans un projet public : Au moins un accès pour les parties prenantes.
Résultats de la recherche résultats basés sur Access: lorsque vous effectuez une recherche dans l’organisation ou la collection, seuls les résultats pour lesquels un membre du projet a accès sont répertoriés.
Catégorie Exigences
Niveaux d’accès - Pour utiliser la recherche de code : Au moins un accès de base.
- Pour accéder au code d'un projet privé : Accès de base au minimum. L’accès des parties prenantes n’inclut pas de code.
Résultats de la recherche résultats basés sur Access: lorsque vous effectuez une recherche dans l’organisation ou la collection, seuls les résultats pour lesquels un membre du projet a accès sont répertoriés.
Outils Extension de la recherche de code

Meilleures pratiques en matière de recherche de code

  • Commencez par une recherche large : Commencez par une recherche large, puis utilisez des opérateurs de filtrage pour affiner la recherche par projet, dépôt, chemin d'accès, nom de fichier, etc.
  • Utilisez des caractères génériques et des opérateurs booléens: Si vous ne connaissez pas le terme exact, utilisez des caractères génériques pour élargir votre recherche et des opérateurs booléens pour la préciser.
  • Survolez pour plus d'informations : Pour obtenir plus d'informations sur un élément de code, survolez-le et utilisez le menu contextuel pour rechercher ce texte dans tous vos projets et fichiers.
  • Fonctionnalité de traçage du code : Utilisez le menu contextuel pour rechercher des éléments connexes tels que des définitions et des références dans un fichier ou dans les résultats de la recherche afin de retracer le fonctionnement de votre code.
  • Utilisez des filtres de type de code : Pour trouver la mise en œuvre d'une API ou d'un autre élément de code, utilisez les filtres de type de code pour rechercher des types de code spécifiques tels que : XXX
    • Définitions
    • Références
    • Fonctions
    • Commentaires
    • Chaînes
    • Espaces de noms, et plus encore

Remarque

La recherche de code ne fonctionne pas dans les dépôts forkés.

Fonctions pour trouver des types de code spécifiques

Pour accélérer la création de votre requête, choisissez des fonctions et des mots-clés dans la liste déroulante au fur et à mesure que vous saisissez du texte. Sélectionnez Afficher plus pour voir toutes les options. Vous pouvez combiner différentes fonctions selon vos besoins.

Vous pouvez également utiliser les filtres de la colonne de gauche pour limiter votre recherche. Afficher plus affiche toutes les fonctions et mots clés.

Vous pouvez également saisir les fonctions et les paramètres dans le champ de recherche. Le tableau suivant répertorie les fonctions permettant de rechercher des types ou des membres spécifiques dans votre code C#, C, C++, Java et Visual Basic.NET.

Pour trouver du code où findThis apparaît sous la forme d’un(e) ... ... recherche de l'argument arg:findThis
Argument arg :findThisDeprecated in July 2019
Type de base basetype :findThis
Fonction appelante caller :findThisDeprecated in July 2019
Définition ou déclaration de classe class :findThis
déclaration de classe classdecl :findThisMerged with class:
Définition de classe classdef :findThisMerged with class:
Commentaire comment :findThis
Constructeur ctor :findThisMerged with method:
Déclaration decl :findThis
Définition def :findThis
Destructeur dtor :findThisMerged with method:
Énumérateur enum :findThis
Extern extern :findThisDeprecated in July 2019
Champ field :findThis
Fonction friend friend :findThisDeprecated in July 2019
Fonction func :findThisMerged with method:
Déclaration de fonction funcdecl :findThisMerged with method:
Définition de fonction funcdef :findThisMerged with method:
Mondial global :findThisDeprecated in July 2019
Header header :findThisDeprecated in July 2019
Interface interface :findThis
Macro macro :findThis
Définition de macro macrodef :findThisMerged with macro:
Référence macro macroref :findThisMerged with macro:
Méthode method :findThis
Déclaration de méthode methoddecl :findThisMerged with method:
Définition de méthode methoddef :findThisMerged with method:
Espace de noms namespace :findThis
Property prop :findThis
Référence ref :findThis
Littéral de chaîne strlit :findThis
Struct struct :findThisMerged with type:
Déclaration de structure structdecl :findThisMerged with type:
Définition de la structure structdef :findThisMerged with type:
Argument de modèle tmplarg :findThisDeprecated in July 2019
Spécification d'un modèle tmplspec :findThisDeprecated in July 2019
Type type :findThis
Typedef typedef :findThisMerged with type:
Union union :findThisDeprecated in July 2019

Fonctions de sélection de projets, de référentiels, de chemins et de fichiers

Les fonctions permettent de limiter la recherche à des emplacements spécifiques, à des types de fichiers spécifiques dans ces emplacements ou à des noms de fichiers spécifiques. Limitez la recherche à un emplacement spécifique à l'aide des filtres proj, repo ou path. Combinez les fonctions suivantes selon vos besoins.

Utilisation exemple
Trouvez toutes les occurrences du mot QueueJobsNow dans le projet Fabrikam. QueueJobsNow proj:Fabrikam
Trouvez toutes les occurrences du mot QueueJobsNow dans le référentiel Contoso. QueueJobsNow repo:Contoso
Recherchez toutes les occurrences du mot QueueJobsNow dans le chemin VisualStudio/Services/Framework et ses sous-chemins. QueueJobsNow path:VisualStudio/Services/Framework
Recherchez toutes les occurrences du mot QueueJobsNow dans les chemins */Doc*/Framework/* et */Doc*/*/*/Framework/* et ses sous-chemins. Le modèle globbing (**) correspond à zéro ou plusieurs caractères sur plusieurs segments. Par exemple, path:**/Doc**/Framework correspond également à abc/DocTest/gh/ijk/mnop/Framework/. QueueJobsNow path:**/Doc**/Framework
Trouvez toutes les occurrences du mot QueueJobsNow dans le chemin */Doc*/Framework/* et ses sous-chemins et le nom de fichier Test*.txt (Use Globbing Pattern **). Par exemple, le chemin:**/Doc**/Framework/**/Test*.txt correspond également à abc/def/DocA/gh/Framework/TestMisc.txt. QueueJobsNow path:**/Doc**/Framework/**/Test*.txt
Mettez l'argument du filtre entre guillemets s'il contient un espace. QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services"
Rechercher toutes les occurrences du mot QueueJobsNow dans tous les fichiers dont le nom commence par queueRegister. QueueJobsNow file:queueRegister*
Recherchez tous les fichiers dont le nom est QueueRegister sans extension. Utilisez les guillemets pour trouver les fichiers sans extension. file:"queueRegister"
Rechercher toutes les occurrences du mot QueueJobsNow dans les fichiers source C# uniquement. Une chaîne de recherche en texte brut qui n'inclut pas les fonctions de type de fichier permet également de trouver les fichiers dont la chaîne correspond à une partie du nom de fichier. QueueJobsNow ext:cs

La recherche de code vous permet d'étendre votre recherche de manière interactive en fonction des résultats précédents. Par exemple, vous pouvez élargir votre recherche aux fichiers connexes lorsque vous tracez ou déboguez du code.

Cliquez avec le bouton droit de la souris sur un terme dans le fichier et lancez une nouvelle recherche d'autres fichiers contenant le même terme. Vous pouvez le rechercher en tant que texte, ou en tant que définition ou référence s'il s'agit d'un nom d'objet.

Pour plus d’informations, consultez Commencer avec la recherche.

Autres opérations de recherche de code

Voici d'autres fonctions de recherche de code. Vous pouvez rechercher des types de code dans les fichiers C#, C, C++, Java et Visual Basic.NET. Pour ouvrir les résultats de la recherche dans un nouvel onglet, sélectionnez Ctrl + Enter dans le champ de recherche principal. Pour basculer vers le nouvel onglet dans Google Chrome, faites Ctrl + Maj + Entrée.

Utilisation exemple
Rechercher tous les commentaires Historique : Mot clé
Recherchez toutes les occurrences de commentaires « ToDo » dans votre code. Sélectionnez comment: et entrez todo
Rechercher à des endroits spécifiques, par exemple dans un chemin particulier Utilisez une chaîne de recherche telle que Driver path:MyShuttle/Server
Recherchez des fichiers par leur nom ou par leur extension. Driver file:GreenCabs.cs. La chaîne de recherche error ext:resx peut être utile si vous souhaitez passer en revue toutes les chaînes d'erreur de votre code. Même si votre chaîne de recherche en texte brut correspond à une partie d'un nom de fichier, le fichier apparaît dans la liste des fichiers trouvés. Cette recherche fonctionne sans correspondre à des fonctions spécifiques de type de fichier.

Recherche dans les projets et dépôts Git

Un projet Git comporte une liste de dépôts. Pour étendre votre recherche, cochez les cases du projet et du dépôt. Vous pouvez effectuer une recherche sur tous les projets, sur plusieurs projets ou sur un nombre réduit de projets et de dépôts. S'il y a beaucoup de projets ou de dépôts, sélectionnez Afficher plus pour les voir tous.

La recherche de code peut indexer différentes branches d'un dépôt Git. Par défaut, il n'indexe que les fichiers de la branche par défaut de votre dépôt Git. La branche par défaut est main. Pour indexer d'autres branches, allez dans l'onglet Options de la section Dépôts de la page des paramètres du projet.

Remarque

Par défaut, la recherche de code recherche la chaîne spécifiée dans la branche principale ou par défaut d'un dépôt. Mais vous pouvez restreindre la recherche en spécifiant un filtre pour une branche spécifique.

capture d’écran Capture d'écran montrant les branches Git pour la configuration.

Rechercher des projets TFVC

Les projets Team Foundation Version Control (TFVC) affichent uniquement les dossiers que vous pouvez lire. Vous ne pouvez pas voir d'autres projets ou dossiers. Pour filtrer votre recherche, choisissez des dossiers dans l'arbre.

Conseil

Code Search enregistre vos derniers paramètres, tels que le projet et le dépôt ou le chemin dans lequel vous avez effectué la recherche. Lorsque vous souhaitez effectuer une recherche dans un périmètre différent, sélectionnez Effacer tous les liens pour décocher les cases et effectuer une recherche dans tous les projets. Les 100 premières occurrences ou correspondances dans les fichiers cibles sont mises en évidence par la recherche de code dans le volet des résultats.

Recherche de code avec l'API REST

Vous pouvez utiliser des API pour étendre ou compléter les fonctionnalités énumérées dans cet article. Pour plus d'informations sur la recherche de code avec l'API REST, voir Récupérer les résultats de la recherche de code.

Étapes suivantes