Recherche de code fonctionnel
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Recherchez le code dont vous avez besoin plus rapidement avec la recherche de code fonctionnel. Cet article explique comment affiner votre recherche entre les référentiels à l’aide de types de code et d’autres fonctions avec l’extension Place de marché Recherche de code pour Azure DevOps.
Prérequis
- Niveaux d’accès :
- Accès de base :
- Pour utiliser la recherche de code, vous devez disposer au moins d’un accès de base.
- Pour accéder au code dans un projet privé, vous devez disposer d’au moins un accès de base.
- Accès des parties prenantes :
- Les utilisateurs disposant d’un accès aux parties prenantes n’ont pas accès au code, de sorte qu’ils ne peuvent pas rechercher de code.
- Les utilisateurs disposant d’un accès des parties prenantes pour un projet public ont un accès complet au code, afin qu’ils puissent rechercher du code.
- Accès de base :
- Résultats de la recherche :
- Résultats basés sur l’accès : lorsque vous effectuez une recherche dans l’ensemble de l’organisation ou de la collection, seuls les résultats pour lesquels un membre du projet a accès sont répertoriés.
- Niveaux d’accès :
- Accès de base :
- Pour utiliser la recherche de code, vous devez disposer au moins d’un accès de base.
- Pour accéder au code dans un projet privé, vous devez disposer d’au moins un accès de base.
- Accès des parties prenantes :
- Les utilisateurs disposant d’un accès aux parties prenantes n’ont pas accès au code, de sorte qu’ils ne peuvent pas rechercher de code.
- Accès de base :
- Résultats de la recherche :
- Résultats basés sur l’accès : lorsque vous effectuez une recherche dans l’ensemble de l’organisation ou de la collection, seuls les résultats pour lesquels un membre du projet a accès sont répertoriés.
- Outils :
- Installez la recherche de code.
Meilleures pratiques de recherche de code
- Commencez par une recherche large , puis utilisez des opérateurs de filtre pour le limiter par projet, référentiel, 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 développer vos opérateurs de recherche et booléens pour l’affiner.
- Pointez pour plus d’informations : pour obtenir plus d’informations sur un élément de code, pointez dessus et utilisez le menu contextuel pour rechercher ce texte dans tous vos projets et fichiers.
- Fonctionnalité de code de trace : 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 recherche pour suivre le fonctionnement de votre code.
- Utilisez des filtres de type de code : pour rechercher l’implémentation d’une API ou d’un autre élément de code, utilisez des filtres de type de code pour rechercher des types spécifiques de code tels que :
- Définitions
- Références
- Functions
- Commentaires
- Chaînes
- Espaces de noms, et bien plus encore
Remarque
La recherche de code ne fonctionne pas pour les référentiels forked.
Fonctions permettant de rechercher des types de code spécifiques
Pour créer votre requête plus rapidement, choisissez des fonctions et des mots clés dans la liste déroulante lorsque vous entrez du texte. Sélectionnez Afficher plus pour afficher toutes les options. Vous pouvez combiner différentes fonctions en fonction des besoins.
Vous pouvez également utiliser des filtres à partir de la colonne gauche pour affiner votre recherche. Afficher plus vous montre toutes les fonctions et mots clés.
Vous pouvez également taper les fonctions et les paramètres dans la zone 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 ... | ... rechercher l’argument arg :findThis |
---|---|
Argument | arg :findThis Deprecated in July 2019 |
Type de base | basetype :findThis |
Fonction appelante | caller :findThis Deprecated in July 2019 |
Définition ou déclaration de classe | class :findThis |
déclaration de classe | classdecl :findThis Merged with class: |
Définition de classe | classdef :findThis Merged with class: |
Commentaire | comment :findThis |
Constructeur | ctor :findThis Merged with method: |
Déclaration | decl :findThis |
Définition | def :findThis |
Destructeur | dtor :findThis Merged with method: |
Énumérateur | enum :findThis |
Extern | extern :findThis Deprecated in July 2019 |
Champ | field :findThis |
Friend, fonction | friend :findThis Deprecated in July 2019 |
Fonction | func :findThis Merged with method: |
Déclaration de fonction | funcdecl :findThis Merged with method: |
Définition de fonction | funcdef :findThis Merged with method: |
Global | global :findThis Deprecated in July 2019 |
En-tête | header :findThis Deprecated in July 2019 |
Interface | interface :findThis |
Macro | macro :findThis |
Définition de macro | macrodef :findThis Merged with macro: |
Informations de référence sur les macros | macroref :findThis Merged with macro: |
Method | method :findThis |
Déclaration de méthode | methoddecl :findThis Merged with method: |
Définition de méthode | methoddef :findThis Merged with method: |
Espace de noms | namespace :findThis |
Propriété | prop :findThis |
Référence | ref :findThis |
Littéral de chaîne | strlit :findThis |
Struct | struct :findThis Merged with type: |
Déclaration de struct | structdecl :findThis Merged with type: |
Définition de struct | structdef :findThis Merged with type: |
Argument de modèle | tmplarg :findThis Deprecated in July 2019 |
Spécification du modèle | tmplspec :findThis Deprecated in July 2019 |
Type | type :findThis |
Typedef | typedef :findThis Merged with type: |
Union | union :findThis Deprecated in July 2019 |
Fonctions permettant de sélectionner des projets, des référentiels, des chemins d’accès et des fichiers
Les fonctions permettent d’affiner facilement la recherche à des emplacements spécifiés, à des types spécifiques de fichiers dans ces emplacements ou à des noms de fichiers spécifiés. Limitez la recherche à un emplacement spécifique à l’aide du proj
ou repo
path
des filtres. Mélanger et faire correspondre les fonctions suivantes en fonction des besoins.
Utilisation | Exemple |
---|---|
Recherchez toutes les occurrences du mot QueueJobsNow dans le projet Fabrikam. | QueueJobsNow proj:Fabrikam |
Recherchez 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 le chemin */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 |
Recherchez toutes les occurrences du mot QueueJobsNow dans le chemin */Doc*/Framework/* et ses sous-chemins et nom de fichier Test*.txt (utiliser le modèle Globbing **). Par exemple, path :**/Doc**/Framework/**/Test*.txt correspond également à abc/def/Doc A/gh/Framework/TestMisc.Txt | QueueJobsNow path:**/Doc**/Framework/**/Test*.txt |
Placez l’argument dans le filtre entre guillemets doubles s’il contient un espace. | QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services" |
Recherchez toutes les occurrences du mot QueueJobsNow dans tous les fichiers où le nom de fichier commence par queueRegister. | QueueJobsNow file:queueRegister* |
Recherchez tous les fichiers portant le nom QueueRegister sans extension. Utilisez des guillemets pour rechercher des fichiers sans extensions. | file:"queueRegister" |
Recherchez toutes les occurrences du mot QueueJobsNow dans uniquement les fichiers sources C#. Une chaîne de recherche en texte brut qui n’inclut pas de fonctions de type de fichier trouve également des fichiers dans lesquels la chaîne correspond à la partie du nom de fichier. | QueueJobsNow ext:cs |
Rechercher des éléments connexes ou d’autres termes
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 associés lorsque vous effectuez le suivi ou le débogage du code.
Cliquez avec le bouton droit sur un terme dans le fichier et démarrez une nouvelle recherche d’autres fichiers avec 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 Prise en main de la recherche.
Autres opérations de recherche de code
Voici quelques fonctions de recherche de code supplémentaires. 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 + Entrée dans la zone de recherche principale. Pour basculer vers le nouvel onglet dans Google Chrome, sélectionnez Ctrl + Maj + Entrée.
Utilisation | Exemple |
---|---|
Rechercher tous les commentaires | History :Keyword |
Rechercher toutes les instances des commentaires « ToDo » dans votre code | Sélectionner comment: , puis entrer todo |
Rechercher dans des emplacements spécifiques, comme dans un chemin d’accès particulier | Utiliser une chaîne de recherche telle que Driver path:MyShuttle/Server |
Rechercher des fichiers par nom ou simplement par extension de fichier | Driver file:GreenCabs.cs . La chaîne error ext:resx de recherche peut être utile si vous souhaitez examiner toutes les chaînes d’erreur dans 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 de type de fichier spécifiques. |
Rechercher des projets et référentiels Git
Un projet Git contient une liste de référentiels. Pour développer votre recherche, cochez les zones de projet et de référentiel. Vous pouvez effectuer des recherches dans tous les projets ou plus, ou moins de projets et de dépôts. S’il existe de nombreux projets ou référentiels, sélectionnez Afficher plus pour les afficher tous.
La recherche de code peut indexer différentes branches dans un référentiel Git. Il indexe uniquement les fichiers dans le branche par défaut de vos référentiels Git par défaut. La branche par défaut est principale. Pour indexer d’autres branches, accédez à l’onglet Options de la section Référentiels de la page paramètres du projet.
Remarque
Par défaut, la recherche de code recherche la chaîne spécifiée dans le principal ou branche par défaut d’un référentiel. Toutefois, vous pouvez affiner la recherche en spécifiant un filtre pour une branche spécifique.
Rechercher des projets TFVC
Les projets 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’arborescence.
Conseil
La recherche de code enregistre vos derniers paramètres, tels que le projet et le dépôt ou le chemin dans lequel vous avez recherché. Lorsque vous souhaitez effectuer une recherche dans une autre étendue, sélectionnez Effacer tous les liens pour effacer les cases à cocher et rechercher dans tous les projets. Les 100 premières correspondances ou correspondances dans les fichiers cibles sont mises en surbrillance par Recherche de code dans le volet de résultats.
Rechercher du code avec l’API REST
Vous pouvez utiliser des API pour étendre ou compléter les fonctionnalités répertoriées dans cet article. Pour plus d’informations sur la recherche de code avec l’API REST, consultez Extraire les résultats de la recherche de code.