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
- Livelli di accesso:
- Accesso di base:
- Per usare la ricerca di codice, è necessario avere almeno l'accesso Basic.
- Per accedere al codice in un progetto privato, è necessario avere almeno l'accesso Basic.
- Accesso degli stakeholder:
- 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.
- Accesso di base:
- Risultati della ricerca:
- Risultati basati sull'accesso: quando si esegue una ricerca nell'organizzazione o nella raccolta, vengono elencati solo i risultati per i quali un membro del progetto ha accesso.
- Livelli di accesso:
- Accesso di base:
- Per usare la ricerca di codice, è necessario avere almeno l'accesso Basic.
- Per accedere al codice in un progetto privato, è necessario avere almeno l'accesso Basic.
- Accesso degli stakeholder:
- Gli utenti con accesso stakeholder non hanno accesso al codice, quindi non possono cercare il codice.
- Accesso di base:
- Risultati della ricerca:
- Risultati basati sull'accesso: quando si esegue una ricerca nell'organizzazione o nella raccolta, vengono elencati solo i risultati per i quali un membro del progetto ha accesso.
- Strumenti:
- Installare Ricerca codice.
Procedure consigliate per la ricerca di codice
- Iniziare in generale: 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.
- Usare caratteri jolly e operatori booleani: se non si conosce il termine esatto, usare i caratteri jolly per espandere gli operatori booleani e di ricerca per perfezionarlo.
- Passare il puntatore del mouse per altre informazioni: per ottenere altre informazioni su un elemento di codice, passare il puntatore del mouse su di esso e usare il menu di scelta rapida per cercare il testo in tutti i progetti e i file.
- Funzionalità del codice di traccia: usare il menu di scelta rapida per cercare elementi correlati come definizioni e riferimenti in un file o nei risultati della ricerca per tracciare il funzionamento del codice.
- Usare filtri di tipo di codice: per trovare l'implementazione di un'API o di un altro elemento di codice, usare filtri di tipo di codice per cercare tipi specifici di codice, ad esempio:
- Definizioni
- Riferimenti
- Funzioni
- Commenti
- 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 l'immissione del testo. 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:findThis Deprecated in July 2019 |
Tipo base | basetype:findThis |
Funzione chiamante | chiamante: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: |
Generale | 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 | method:findThis |
Dichiarazione del 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 |
Stringa di valore letterale | strlit:findThis |
Struct | struct:findThis Merged with type: |
Dichiarazione di struct | structdecl:findThis Merged with type: |
Definizione dello struct | structdef:findThis Merged with type: |
Argomento modello | tmplarg:findThis Deprecated in July 2019 |
Specifica del modello | tmplspec:findThis Deprecated in July 2019 |
Type | 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 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 proj
filtri , repo
o 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 corrisponde 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 |
Trovare elementi correlati o altri termini
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 o come definizione o riferimento se si tratta di un nome di oggetto.
Per altre informazioni, vedere Introduzione alla ricerca.
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 è main. Per indicizzare altri rami, passare alla scheda Opzioni nella sezione Repository della pagina delle impostazioni del progetto.
Nota
Per impostazione predefinita, la ricerca del codice cerca la stringa specificata nel ramo principale o predefinito di un repository. Tuttavia, è possibile restringere la ricerca specificando un filtro per un ramo specifico.
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.