Compartilhar via


Pesquisa de código funcional

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

Localize o código necessário mais rapidamente com a pesquisa de código funcional. Este artigo explica como refinar sua pesquisa entre repositórios usando tipos de código e outras funções com a extensão do Marketplace de Pesquisa de Código para Azure DevOps.

Pré-requisitos

Categoria Pré-requisito
Níveis de Acesso – Para usar a pesquisa de código: pelo menos acesso básico.
– Para acessar o código em um projeto privado: pelo menos acesso básico . O acesso de partes interessadas não inclui código.
– Para acessar o código em um projeto público: no mínimo acesso Stakeholder.
Resultados da pesquisa Resultados baseados em acesso: quando você está pesquisando em toda a organização ou coleção, somente os resultados para os quais um membro do projeto tem acesso são listados.
Categoria Requisitos
Níveis de Acesso – Para usar a pesquisa de código: pelo menos acesso básico.
– Para acessar o código em um projeto privado: pelo menos acesso básico . O acesso de partes interessadas não inclui código.
Resultados da pesquisa Resultados baseados em acesso: quando você está pesquisando em toda a organização ou coleção, somente os resultados para os quais um membro do projeto tem acesso são listados.
Ferramentas Extensão de Pesquisa de Código

Práticas recomendadas de pesquisa de código

  • Inicie amplamente: Comece com uma pesquisa ampla e use operadores de filtro para restringi-lo por projeto, repositório, caminho, nome do arquivo e muito mais.
  • Use curingas e operadores boolianos: Se você não souber o termo exato, use curingas para expandir sua pesquisa e operadores boolianos para refiná-la.
  • Passe o mouse para obter mais informações: Para obter mais informações sobre um item de código, passe o mouse sobre ele e use o menu de atalho para pesquisar esse texto em todos os seus projetos e arquivos.
  • Funcionalidade de código de rastreamento: Use o menu de atalho para pesquisar itens relacionados, como definições e referências em um arquivo ou nos resultados da pesquisa, para rastrear como o código funciona.
  • Use filtros de tipo de código: Para localizar a implementação de uma API ou outro elemento de código, use filtros de tipo de código para pesquisar tipos específicos de código, como:
    • Definições
    • Referências
    • Functions
    • Comentários
    • Cordas
    • Namespaces e muito mais

Observação

A pesquisa de código não funciona para repositórios bifurcados.

Funções para localizar tipos específicos de código

Para criar sua consulta mais rapidamente, escolha funções e palavras-chave na lista suspensa ao inserir texto. Selecione Mostrar mais para ver todas as opções. Você pode combinar funções diferentes conforme necessário.

Você também pode usar filtros da coluna esquerda para restringir sua pesquisa. Mostrar mais mostra todas as funções e palavras-chave.

Ou você pode digitar as funções e os parâmetros na caixa de pesquisa. A tabela a seguir lista as funções para localizar tipos ou membros específicos em seu código C#, C, C++, Java e Visual Basic.NET.

Para encontrar o código no qual findThis aparece como... ... pesquisar por argumento arg:findThis
Argumento arg:findThisDeprecated in July 2019
Tipo base basetype:findThis
Função de chamada caller:findThisDeprecated in July 2019
Definição ou declaração de classe class:findThis
Declaração de classe classdecl:findThisMerged with class:
Definição de classe classdef:findThisMerged with class:
Comentário comment:findThis
Construtor ctor:findThisMerged with method:
Declaração decl:findThis
Definição def:findThis
Destruidor dtor:findThisMerged with method:
Enumerador enum:findThis
Extern extern:findThisDeprecated in July 2019
Campo field:findThis
Função friend friend:findThisDeprecated in July 2019
Função func:findThisMerged with method:
Declaração de função funcdecl:findThisMerged with method:
Definição de função funcdef:findThisMerged with method:
Global global:findThisDeprecated in July 2019
Cabeçalho header:findThisDeprecated in July 2019
Interface interface:findThis
Macro macro:findThis
Definição da macro macrodef:findThisMerged with macro:
Referência macro macroref:findThisMerged with macro:
Método method:findThis
Declaração de método methoddecl:findThisMerged with method:
Definição de método methoddef:findThisMerged with method:
Namespace namespace:findThis
Propriedade prop:findThis
Referência ref:findThis
Literal de cadeia de caracteres strlit:findThis
Estrutura struct:findThisMerged with type:
Declaração de estrutura structdecl:findThisMerged with type:
Definição de struct structdef:findThisMerged with type:
Argumento de modelo tmplarg:findThisDeprecated in July 2019
Especificação do modelo tmplspec:findThisDeprecated in July 2019
Tipo type:findThis
Typedef typedef:findThisMerged with type:
Union union:findThisDeprecated in July 2019

Funções para selecionar projetos, repositórios, caminhos e arquivos

As funções facilitam a restrição da pesquisa a locais especificados, tipos específicos de arquivos nesses locais ou nomes de arquivo especificados. Restrinja a pesquisa a um local específico usando os filtros proj, repo ou path. Combine e encaixe as seguintes funções segundo a necessidade.

Usage Exemplo
Localize todas as ocorrências da palavra QueueJobsNow no projeto Fabrikam. QueueJobsNow proj:Fabrikam
Localize todas as ocorrências da palavra QueueJobsNow no repositório Contoso. QueueJobsNow repo:Contoso
Encontre todas as ocorrências da palavra QueueJobsNow no caminho VisualStudio/Services/Framework e seus subcaminhos. QueueJobsNow path:VisualStudio/Services/Framework
Encontre todas as ocorrências da palavra QueueJobsNow no caminho */Doc*/Framework/* e */Doc*/*/*/Framework/* e seus subcaminhos. O padrão de recurso de curinga (**) corresponde a zero ou mais caracteres em vários segmentos. Por exemplo, path:**/Doc**/Framework também corresponde a abc/DocTest/gh/ijk/mnop/Framework/ QueueJobsNow path:**/Doc**/Framework
Encontre todas as ocorrências da palavra QueueJobsNow no caminho */Doc*/Framework/* e seus subcaminhos e nome de arquivo Test*.txt (Use Padrão de Globbing **). Por exemplo, path:**/Doc**/Framework/**/Test*.txt também corresponde ao abc/def/DocA/gh/Framework/TestMisc.txt QueueJobsNow path:**/Doc**/Framework/**/Test*.txt
Coloque o argumento no filtro entre aspas duplas se ele contiver um espaço. QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services"
Localize todas as ocorrências da palavra QueueJobsNow em todos os arquivos em que o nome do arquivo começa com queueRegister. QueueJobsNow file:queueRegister*
Encontre todos os arquivos com o nome QueueRegister sem uma extensão. Use aspas para localizar arquivos sem extensões. file:"queueRegister"
Localize todas as ocorrências da palavra QueueJobsNow apenas em arquivos de origem em C#. Uma cadeia de caracteres de pesquisa de texto sem formatação que não inclui funções de tipo de arquivo também localiza arquivos em que a cadeia de caracteres corresponde a parte do nome do arquivo. QueueJobsNow ext:cs

A Pesquisa de Código permite expandir interativamente sua pesquisa com base nos resultados anteriores. Por exemplo, você pode ampliar sua pesquisa para arquivos relacionados quando estiver rastreando ou depurando código.

Clique com o botão direito do mouse em um termo no arquivo e inicie uma nova pesquisa para outros arquivos com o mesmo termo. Você pode pesquisá-lo como texto ou como uma definição ou referência se for um nome de objeto.

Para saber mais, confira Introdução à pesquisa.

Mais operações de pesquisa de código

Aqui estão mais algumas funções de pesquisa de código. Você pode pesquisar tipos de código em arquivos C#, C, C++, Java e Visual Basic.NET. Para abrir os resultados da pesquisa em uma nova guia, selecione Ctrl + Enter na caixa de pesquisa principal. Para alternar para a nova guia no Google Chrome, selecione Ctrl + Shift + Enter.

Usage Exemplo
Localizar todos os comentários Histórico:Palavra-chave
Encontre todas as ocorrências de comentários "ToDo" em seu código Selecionar comment: e inserir todo
Pesquisar em locais específicos, como em um caminho específico Usar uma cadeia de caracteres de pesquisa, como Driver path:MyShuttle/Server
Pesquisar arquivos por nome ou apenas por extensão de arquivo Driver file:GreenCabs.cs. A string de pesquisa error ext:resx poderá ser útil se você quiser examinar todas as strings de erro em seu código. Mesmo que sua cadeia de caracteres de pesquisa de texto sem formatação corresponda a parte de um nome de arquivo, o arquivo aparecerá na lista de arquivos encontrados. Essa pesquisa funciona sem correlacionar-se às funções de tipo de arquivo específicas.

Pesquisar projetos e repositórios git

Um projeto git tem uma lista de repositórios. Para expandir sua pesquisa, verifique as caixas de projeto e repositório. Você pode pesquisar todos ou mais projetos ou menos projetos e repositórios. Se houver muitos projetos ou repositórios, selecione Mostrar mais para ver todos eles.

A Pesquisa de Código pode indexar diferentes ramificações de um repositório Git. Ele indexa apenas arquivos no branch padrão de seus repositórios Git por padrão. O branch padrão é main. Para indexar outras ramificações, acesse a guia Opções na seção Repositórios da página de configurações do projeto.

Observação

Por padrão, a pesquisa de código procura a cadeia de caracteres especificada no branch principal ou padrão de um repositório. No entanto, você pode restringir a pesquisa especificando um filtro para um ramo específico.

Captura de tela mostrando branches do Git para configuração.

Pesquisar projetos do TFVC

Os projetos do TFVC (Controle de Versão do Team Foundation) exibem apenas as pastas que você pode ler. Você não pode ver nenhum outro projeto ou pasta. Para filtrar sua pesquisa, escolha pastas da árvore.

Dica

A Pesquisa de Código salva suas últimas configurações, como o projeto e o repositório ou o caminho em que você pesquisou. Quando quiser pesquisar em um escopo diferente, selecione Limpar todos os links para limpar as caixas de seleção e pesquisar em todos os projetos. As primeiras 100 ocorrências ou correspondências nos arquivos de destino são realçadas pela Pesquisa de Código no painel de resultados.

Pesquisar código com a API REST

Você pode usar APIs para estender ou complementar os recursos listados neste artigo. Para obter informações sobre a Pesquisa de Código com a API REST, consulte Buscar Resultados da Pesquisa de Código.

Próximas etapas