Ricerca di codice funzionale

Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2017

La ricerca del codice funzionale estende la possibilità di perfezionare la ricerca nei repository oltre a quanto documentato in Introduzione alla ricerca. Per eseguire ricerche di codice, è necessario Code Search'estensione marketplace per l'organizzazione o la raccolta.

Prerequisiti

Per altre informazioni, vedere Installare e configurare la ricerca.

  • Per usare Code Search, è necessario disporre almeno dell'accesso Basic.
  • 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 alcodice , in modo da poter cercare il codice. Per accedere al codice in un progetto privato, è necessario disporre almeno dell'accesso Basic.
  • Quando si esegue una ricerca nell'organizzazione o nella raccolta, vengono elencati solo i risultati per cui un membro del progetto ha accesso.

Procedure consigliate per la ricerca del codice

  • Ottenere i risultati desiderati ancora più velocemente iniziando con una ricerca di livello superiore. È possibile restringere la ricerca usando project, repository, path, file name e altri operatori di filtro.
  • Quando non si è certi del termine esatto che si sta cercando, usare i caratteri jolly per ampliare la ricerca e gli operatori booleani per ottimizzarlo.
  • Trovare altre informazioni su un elemento di interesse più velocemente e con un impegno minimo. Quando si trova un elemento di interesse, posizionare il cursore su di esso e usare il menu di scelta rapida per cercare rapidamente il testo in tutti i progetti e i file.
  • È possibile tracciare facilmente il funzionamento del codice usando il menu di scelta rapida per cercare elementi correlati, ad esempio definizioni e riferimenti, direttamente dall'interno di un file o dai risultati della ricerca.
  • Passare rapidamente all'implementazione di , ad esempio, un'API da cui il codice potrebbe assumere dipendenza restringendo i risultati alle corrispondenze esatte del tipo di codice. Usare i filtri dei tipi di codice per cercare tipi specifici di codice, ad esempio:
  • definitions
  • references
  • functions
  • comments
  • stringhe
  • spazi dei nomi e altro ancora.

Nota

Non è possibile cercare il codice nei repository con fork.

Funzioni per trovare tipi specifici di codice

Quando si immette la ricerca, selezionare funzioni e parole chiave dall'elenco a discesa per creare rapidamente la query. Usare il collegamento Mostra altro per visualizzare tutte le funzioni e le parole chiave disponibili. Combinare e associare le funzioni in base alle esigenze.

È anche possibile selezionare uno o una combinazione di filtri dall'elenco nella colonna di sinistra. Anche in questo caso, il collegamento Mostra altro visualizza tutte le funzioni e le parole chiave disponibili.

È invece possibile immettere le funzioni e i parametri direttamente nella ricerca. La tabella seguente mostra un elenco di funzioni per la selezione di tipi o membri specifici nel codice C#, C, C++, Java e Visual Basic.NET.

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

Funzioni per selezionare progetti, repository, percorsi e file

Le funzioni rendono più semplice restringere la ricerca a percorsi specifici, tipi specifici di file all'interno di questi percorsi o nomi file specificati. Limitare la ricerca a una posizione specifica usando proj i filtri , o repo path . Combinare e associare le funzioni 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 sottopercorsi. QueueJobsNow path:VisualStudio/Services/Framework
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 del 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 una parte del nome file. QueueJobsNow ext:cs

Una delle potenti funzionalità di Code Search è la possibilità di espandere la ricerca in modo interattivo, in base ai risultati delle ricerche precedenti. Ad esempio, è possibile ampliare facilmente la ricerca ai file correlati durante la traccia o il debug del codice.

Posizionare il punto di inserimento su un termine nel file e aprire il menu di scelta rapida (clic con il pulsante destro del mouse) per avviare una nuova ricerca di altri file contenenti il termine selezionato. È possibile cercarlo come testo, per la definizione se si seleziona un nome di oggetto o per i riferimenti a un oggetto selezionato.

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

Vedere gli esempi seguenti di altre funzioni di ricerca del codice. È possibile usare le funzioni di ricerca dei tipi di codice con file scritti in C#, C, C++, Java e Visual Basic.NET. Aprire i risultati della ricerca in una nuova scheda del browser dalla casella di ricerca principale e premere CTRL + INVIO. In Google Chrome premere CTRL + MAIUSC INVIO + per spostare lo stato attivo sulla nuova scheda del browser.

Utilizzo Esempio
Trovare tutte le istanze dei commenti "ToDo" nel codice Selezionare comment: e immettere todo
Eseguire ricerche 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 solo in base all'estensione Driver file:GreenCabs.cs. La stringa di error ext:resx ricerca può essere utile se si vogliono esaminare tutte le stringhe di errore nel codice. Anche se la stringa di ricerca in testo normale corrisponde a una parte di un nome file, il file viene visualizzato nell'elenco dei file trovati. Questa ricerca funziona senza la corrispondenza di funzioni specifiche del tipo di file.

Eseguire ricerche in progetti e repository Git

In un progetto Git viene visualizzato un elenco dei repository in esso contenuti. Usare le caselle di controllo del progetto e del repository per ampliare la ricerca. È possibile eseguire ricerche in più progetti o in tutti i progetti oppure restringere la ricerca a un minor numero di progetti e repository. Se sono presenti più progetti o repository, usare il collegamento Mostra altri per visualizzarli tutti.

Code Search indicizzare più rami in un repository Git. Per impostazione predefinita, indicizza i file solo nel ramo predefinito dei repository Git. Il ramo predefinito è in genere il ramo principale. Specificare i rami per ogni repository, l'indicizzazione nella scheda Opzioni della sezione Repository, pagina delle impostazioni del progetto.

Configurare i rami Git da includere nella ricerca

Cercare progetti TFVC

In un progetto TFVC viene visualizzato un elenco di percorsi di cartella nel progetto per cui si ha accesso in lettura. Non verrà visualizzato alcun progetto e cartella per cui non si dispone dell'autorizzazione di lettura. Selezionare i percorsi nell'albero delle cartelle per restringere la ricerca, se necessario.

Suggerimento

Code Search le ultime impostazioni, ad esempio il progetto e il repository o il percorso in cui è stata cercata. Deselezionare le caselle di controllo per eseguire facilmente la ricerca in tutti i progetti con i collegamenti Cancella tutti quando si vuole eseguire la ricerca in un ambito diverso. Nel riquadro dei risultati vengono Code Search evidenziati fino ai primi 100 riscontri o corrispondenze trovati nei file di destinazione.

Eseguire ricerche nel codice con l'API REST

È possibile usare le API per estendere o integrare le funzionalità elencate in questo articolo. Per informazioni sulle Code Search con l'API REST, vedere Fetch Code Search Results.

Passaggi successivi