Ricerca di codice funzionale

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

Trovare il codice necessario più velocemente con la ricerca di codice funzionale. Questo articolo illustra come perfezionare la ricerca tra repository usando tipi di codice e altre funzioni con l'estensione Code Search Marketplace per Azure DevOps.

Prerequisiti

Per altre informazioni, vedere Installare e configurare la ricerca.

  • Per usare Ricerca codice, è necessario avere almeno l'accesso di base.
  • Gli utenti con accesso stakeholder non hanno accesso al codice, quindi non possono cercare il codice.
  • Gli utenti con accesso stakeholder per un progetto pubblico hanno accesso completo al codice, in modo da poter cercare il codice. Per accedere al codice in un progetto privato, è necessario avere almeno l'accesso Basic.
  • Quando si esegue una ricerca nell'organizzazione o nella raccolta, vengono elencati solo i risultati per i quali un membro del progetto ha accesso.

Procedure consigliate per la ricerca di codice

  • Iniziare con una ricerca generale e quindi usare gli operatori di filtro per restringerlo in base a progetto, repository, percorso, nome file e altro ancora.
  • Se non si conosce il termine esatto, usare i caratteri jolly per espandere gli operatori di ricerca e booleani per perfezionarlo.
  • Per ottenere altre informazioni su una voce di codice, passare il puntatore del mouse su di esso e usare il menu di scelta rapida per cercare tale testo in tutti i progetti e i file.
  • Per tracciare il funzionamento del codice, usare il menu di scelta rapida per cercare elementi correlati come definizioni e riferimenti in un file o nei risultati della ricerca.
  • Per trovare l'implementazione di un'API o di un altro elemento di codice, usare i filtri del tipo di codice per cercare tipi specifici di codice, ad esempio:
    • definizioni:
    • references
    • functions
    • comments
    • stringhe
    • spazi dei nomi e altro ancora.

Nota

La ricerca del codice non funziona per i repository con fork.

Funzioni per trovare tipi specifici di codice

Per creare la query più velocemente, scegliere funzioni e parole chiave dall'elenco a discesa durante la digitazione. Selezionare Mostra altro per visualizzare tutte le opzioni. È possibile combinare diverse funzioni in base alle esigenze.

È anche possibile usare filtri dalla colonna sinistra per restringere la ricerca. Altre informazioni mostrano tutte le funzioni e le parole chiave.

In alternativa, è possibile digitare le funzioni e i parametri nella casella di ricerca. La tabella seguente elenca le funzioni per trovare tipi o membri specifici nel codice C#, C, C++, Java e Visual Basic.NET.

Per trovare il codice in cui findThis appare come ... ... cercare l'argomento arg :findThis
Argomento arg:findThisDeprecated in July 2019
Tipo base basetype:findThis
Funzione chiamante chiamante:findThisDeprecated in July 2019
Definizione o dichiarazione di classe class:findThis
dichiarazione di classe classdecl:findThisMerged with class:
Definizione della classe classdef:findThisMerged with class:
Commento comment:findThis
Costruttore ctor:findThisMerged with method:
Dichiarazione decl:findThis
Definizione def:findThis
Distruttore dtor:findThisMerged with method:
Enumeratore enum:findThis
Extern extern:findThisDeprecated in July 2019
Campo field:findThis
Funzione Friend friend:findThisDeprecated in July 2019
Funzione func:findThisMerged with method:
Dichiarazione di funzione funcdecl:findThisMerged with method:
Definizione di funzione funcdef:findThisMerged with method:
Generale global:findThisDeprecated in July 2019
Intestazione header:findThisDeprecated in July 2019
Interfaccia interface:findThis
Macro macro:findThis
Definizione macro macrodef:findThisMerged with macro:
Informazioni di riferimento sulle macro macroref:findThisMerged with macro:
metodo method:findThis
Dichiarazione del metodo methoddecl:findThisMerged with method:
Definizione del metodo methoddef:findThisMerged with method:
Spazio dei nomi namespace:findThis
Proprietà prop:findThis
Riferimento ref:findThis
Stringa di valore letterale strlit:findThis
Struct struct:findThisMerged with type:
Dichiarazione di struct structdecl:findThisMerged with type:
Definizione dello struct structdef:findThisMerged with type:
Argomento modello tmplarg:findThisDeprecated in July 2019
Specifica del modello tmplspec:findThisDeprecated in July 2019
Type type:findThis
Typedef typedef:findThisMerged with type:
Popolare union:findThisDeprecated in July 2019

Funzioni per selezionare progetti, repository, percorsi e file

Le funzioni semplificano la ricerca in posizioni specificate, tipi specifici di file all'interno di questi percorsi o nomi file specificati. Restringere la ricerca a una posizione specifica usando i projfiltri , repoo path . Combinare e associare le funzioni seguenti in base alle esigenze.

Utilizzo Esempio
Trovare tutte le occorrenze della parola QueueJobsNow nel progetto Fabrikam. QueueJobsNow proj:Fabrikam
Trovare tutte le occorrenze della parola QueueJobsNow nel repository Contoso. QueueJobsNow repo:Contoso
Trovare tutte le occorrenze della parola QueueJobsNow nel percorso VisualStudio/Services/Framework e nei relativi sottopercorso. QueueJobsNow path:VisualStudio/Services/Framework
Trovare tutte le occorrenze della parola QueueJobsNow nel percorso */Doc*/Framework/* e */Doc*/*/*/Framework/* e nei relativi percorsi secondari. Il modello globbing (**) corrisponde a zero o più caratteri tra più segmenti. Ad esempio, path:**/Doc**/Framework corrisponderà anche a abc/DocTest/gh/ijk/mnop/Framework/ QueueJobsNow path:**/Doc**/Framework
Trovare tutte le occorrenze della parola QueueJobsNow nel percorso */Doc*/Framework/* e nei relativi percorsi secondari e nome file Test*.txt (usare il modello Globbing **). Ad esempio, path:**/Doc**/Framework/**/Test*.txt corrisponde anche a abc/def/Doc A/gh/Framework/TestMisc.txt QueueJobsNow path:**/Doc**/Framework/**/Test*.txt
Racchiudere l'argomento nel filtro tra virgolette doppie se contiene uno spazio. QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services"
Trovare tutte le occorrenze della parola QueueJobsNow in tutti i file in cui il nome file inizia con queueRegister. QueueJobsNow file:queueRegister*
Trovare tutti i file con il nome QueueRegister senza estensione. Usare le virgolette per trovare i file senza estensioni. file:"queueRegister"
Trovare tutte le occorrenze della parola QueueJobsNow solo nei file di origine C#. Una stringa di ricerca di testo normale che non include funzioni di tipo file trova anche i file in cui la stringa corrisponde a parte del nome file. QueueJobsNow ext:cs

Ricerca codice consente di espandere in modo interattivo la ricerca in base ai risultati precedenti. Ad esempio, è possibile ampliare la ricerca ai file correlati durante la traccia o il debug del codice.

Fare clic con il pulsante destro del mouse su un termine nel file e avviare una nuova ricerca di altri file con lo stesso termine. È possibile cercarlo come testo oppure come definizione o riferimento se si tratta di un nome di oggetto.

Per altre informazioni sulle funzioni di ricerca seguenti, vedere Introduzione alla ricerca

  • Parola chiave
  • Corrispondenza esatta
  • Wildcard (Carattere jolly)
  • Operatori booleani
  • Prossimità

Altre operazioni di ricerca del codice

Ecco altre funzioni di ricerca del codice. È possibile cercare i tipi di codice nei file C#, C, C++, Java e Visual Basic.NET. Per aprire i risultati della ricerca in una nuova scheda, selezionare CTRL + INVIO nella casella di ricerca principale. Per passare alla nuova scheda in Google Chrome, selezionare CTRL + MAIUSC + INVIO.

Utilizzo Esempio
Trova tutti i commenti History:Keyword
Trovare tutte le istanze dei commenti "ToDo" nel codice Selezionare comment: e immettere todo
Cercare in posizioni specifiche, ad esempio all'interno di un percorso specifico Usare una stringa di ricerca, ad esempio Driver path:MyShuttle/Server
Cercare i file in base al nome o semplicemente all'estensione di file Driver file:GreenCabs.cs. La stringa error ext:resx di ricerca può essere utile se si desidera esaminare tutte le stringhe di errore nel codice. Anche se la stringa di ricerca testo normale corrisponde a parte di un nome file, il file viene visualizzato nell'elenco dei file trovati. Questa ricerca funziona senza associare funzioni di tipo di file specifiche.

Cercare progetti e repository Git

Un progetto Git include un elenco di repository. Per espandere la ricerca, selezionare le caselle di progetto e repository. È possibile eseguire ricerche in tutti o più progetti o meno progetti e repository. Se sono presenti molti progetti o repository, selezionare Mostra altro per visualizzarli tutti.

Ricerca codice può indicizzare rami diversi in un repository Git. Indicizza solo i file nel ramo predefinito dei repository Git per impostazione predefinita. Il ramo predefinito è in genere principale. Per indicizzare altri rami, passare alla scheda Opzioni nella sezione Repository della pagina delle impostazioni del progetto.

Screenshot che mostra i rami Git per la configurazione.

Cercare progetti TFVC

I progetti TFVC visualizzano solo le cartelle che è possibile leggere. Non è possibile visualizzare altri progetti o cartelle. Per filtrare la ricerca, scegliere le cartelle dall'albero.

Suggerimento

Ricerca codice salva le ultime impostazioni, ad esempio il progetto e il repository o il percorso in cui è stata eseguita la ricerca. Quando si vuole cercare in un ambito diverso, selezionare Cancella tutti i collegamenti per deselezionare le caselle di controllo e cercare in tutti i progetti. I primi 100 riscontri o corrispondenze nei file di destinazione sono evidenziati da Ricerca codice nel riquadro dei risultati.

Eseguire ricerche nel codice con l'API REST

È possibile usare le API per estendere o integrare le funzionalità elencate in questo articolo. Per informazioni sulla ricerca di codice con l'API REST, vedere Recuperare i risultati della ricerca del codice.

Passaggi successivi