Búsqueda de código funcional

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

La búsqueda de código funcional amplía la capacidad de refinar la búsqueda en repositorios más allá de lo que se documenta en Introducción a la búsqueda. Para realizar búsquedas de código, la Code Search marketplace debe estar instalada para su organización o colección.

Requisitos previos

Para obtener más información, vea Instalar y configurar la búsqueda.

  • Para usar Code Search, debe tener al menos acceso Básico.
  • Los usuarios con acceso de las partes interesadas no tienen acceso al código, por lo que no pueden buscar código.
  • Los usuarios con acceso de las partes interesadas para un proyecto público tienen acceso totalal código, por lo que pueden buscar código. Para acceder al código de un proyecto privado, debe tener al menos acceso básico.
  • Al buscar en la organización o colección, solo se muestran los resultados a los que un miembro del proyecto tiene acceso.

Procedimientos recomendados de búsqueda de código

  • Obtenga los resultados que desee incluso más rápidos empezando por una búsqueda de nivel superior. Puede restringir la búsqueda mediante el proyecto, el repositorio, la ruta de acceso, el nombre de archivo y otros operadores de filtro.
  • Cuando no esté seguro del término exacto que busca, use caracteres comodín para ampliar los operadores de búsqueda y booleanos para ajustarlo.
  • Encuentre más información sobre un elemento de interés más rápido y con un esfuerzo mínimo. Cuando encuentre un elemento de interés, coloque el cursor sobre él y use el menú contextual para buscar rápidamente ese texto en todos los proyectos y archivos.
  • Haga un seguimiento sencillo del funcionamiento del código mediante el menú contextual para buscar elementos relacionados, como definiciones y referencias, directamente desde dentro de un archivo o desde los resultados de la búsqueda.
  • Vaya rápidamente a la implementación de, por ejemplo, una API de la que el código podría estar tomando dependencia mediante la limitación de los resultados a coincidencias de tipo de código exactas. Use filtros de tipo de código para buscar tipos específicos de código, como:
  • definitions
  • references
  • functions
  • comments
  • cadenas
  • espacios de nombres, etc.

Nota

No se puede buscar código en repositorios bifurcados.

Funciones para buscar tipos específicos de código

A medida que escriba la búsqueda, seleccione funciones y palabras clave en la lista desplegable para crear rápidamente la consulta. Use el vínculo Mostrar más para mostrar todas las funciones y palabras clave disponibles. Mezcle y coincida con las funciones según sea necesario.

También puede seleccionar uno o una combinación de filtros de la lista de la columna izquierda. De nuevo, el vínculo Mostrar más muestra todas las funciones y palabras clave disponibles.

En su lugar, puede escribir las funciones y los parámetros directamente en la búsqueda. En la tabla siguiente se muestra una lista de funciones para seleccionar tipos o miembros específicos en C#, C, C++, Java y Visual Basic.NET.

Para buscar código donde findThis aparece como un ... ... buscar argumento arg:findThis
Argumento arg:findThis
Tipo base basetype:findThis
Función de llamada llamador:findThis
Definición o declaración de clase clase:findThis
declaración de clase classdecl:findThis
Definición de clase classdef:findThis
Comentario comment:findThis
Constructor ctor:findThis
Declaración decl:findThis
Definición def:findThis
Destructor dtor:findThis
Enumerador enum:findThis
Extern extern:findThis
Campo field:findThis
Función Friend friend:findThis
Función func:findThis
Declaración de función funcdecl:findThis
Definición de función funcdef:findThis
Global global:findThis
Encabezado header:findThis
Interfaz interface:findThis
Macro macro:findThis
Definición de macro macrodef:findThis
Referencia de macro macroref:findThis
Método method:findThis
Declaración de método methoddecl:findThis
Definición de método methoddef:findThis
Espacio de nombres namespace:findThis
Propiedad prop:findThis
Referencia ref:findThis
Literal de cadena strlit:findThis
Estructura struct:findThis
Declaración de estructura structdecl:findThis
Definición de estructura structdef:findThis
Argumento de plantilla tmplarg:findThis
Especificación de plantilla tmplspec:findThis
Tipo type:findThis
Definición de tipo typedef:findThis
Union union:findThis

Funciones para seleccionar proyectos, repositorios, rutas de acceso y archivos

Las funciones hacen que sea fácil restringir la búsqueda a ubicaciones especificadas, tipos específicos de archivos dentro de estas ubicaciones o nombres de archivo especificados. Limite la búsqueda a una ubicación específica mediante los filtros projrepo , o path . Mezcle y coincida con las funciones según sea necesario.

Uso Ejemplo
Busque todas las apariciones de la palabra QueueJobsNow en el proyecto fabrikam. QueueJobsNow proj:Fabrikam
Busque todas las apariciones de la palabra QueueJobsNow en el repositorio de Contoso. QueueJobsNow repo:Contoso
Busque todas las apariciones de la palabra QueueJobsNow en la ruta de acceso VisualStudio/Services/Framework y sus subpaths. QueueJobsNow path:VisualStudio/Services/Framework
Incluya el argumento en el filtro entre comillas dobles si contiene un espacio. QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services"
Busque todas las apariciones de la palabra QueueJobsNow en todos los archivos donde el nombre de archivo comienza por queueRegister. QueueJobsNow file:queueRegister*
Busque todos los archivos con el nombre QueueRegister sin una extensión. Use comillas para buscar archivos sin extensiones. file:"queueRegister"
Busque todas las apariciones de la palabra QueueJobsNow solo en archivos de código fuente de C#. Una cadena de búsqueda de texto sin formato que no incluye funciones de tipo de archivo también busca archivos donde la cadena coincide con parte del nombre de archivo. QueueJobsNow ext:cs

Una de las eficaces características de Code Search es la capacidad de expandir la búsqueda de forma interactiva, en función de los resultados de búsquedas anteriores. Por ejemplo, puede ampliar fácilmente la búsqueda a archivos relacionados al realizar el seguimiento o la depuración de código.

Coloque el punto de inserción en un término en el archivo y abra el menú contextual (mouse: clic con el botón derecho) para iniciar una nueva búsqueda de otros archivos que contengan el término seleccionado. Puede buscarlo como texto, para la definición si selecciona un nombre de objeto o para las referencias a un objeto seleccionado.

Para obtener más información sobre las siguientes funciones de búsqueda, vea Introducción a la búsqueda.

  • Palabra clave
  • Coincidencia exacta
  • Wildcard (Carácter comodín)
  • Operadores booleanos
  • Proximidad

Más operaciones de búsqueda de código

Vea los ejemplos siguientes de incluso más funciones de búsqueda de código. Puede usar las funciones de búsqueda de tipo de código con archivos escritos en C#, C, C++, Java y Visual Basic.NET. Abra los resultados de la búsqueda en una nueva pestaña del explorador en el cuadro de búsqueda principal y seleccione CtrlEntrar. En Google Chrome, seleccione CtrlMayúsEntrar para cambiar el foco a la nueva pestaña del explorador.

Uso Ejemplo
Buscar todas las instancias de comentarios "ToDo" en el código Seleccione comment: y escriba todo
Buscar en ubicaciones específicas, como dentro de una ruta de acceso determinada Usar una cadena de búsqueda como Driver path:MyShuttle/Server
Buscar archivos por nombre o simplemente por extensión de archivo Driver file:GreenCabs.cs. La cadena de error ext:resx búsqueda podría ser útil si desea revisar todas las cadenas de error del código. Incluso si la cadena de búsqueda de texto sin formato coincide con parte de un nombre de archivo, el archivo aparece en la lista de archivos encontrados. Esta búsqueda funciona sin coincidir con funciones de tipo de archivo específicas.

Búsqueda de proyectos y repositorios de Git

En un proyecto de Git, verá una lista de los repositorios que contiene. Use las casillas de proyecto y repositorio para ampliar la búsqueda. Puede buscar más o todos los proyectos, o restringir la búsqueda a menos proyectos y repositorios. Si hay más de unos pocos proyectos o repositorios, use el vínculo Mostrar más para verlos todos.

Code Search indexar varias ramas en un repositorio de Git. De forma predeterminada, indexa los archivos solo en la rama predeterminada de los repositorios de Git. La rama predeterminada suele ser la rama principal. Especifique las ramas de cada repositorio, indexando en la pestaña Opciones de la sección Repositorios,página de configuración del proyecto.

Configuración de ramas de Git para incluir en la búsqueda

Búsqueda de proyectos de TFVC

En un proyecto de TFVC, verá una lista de rutas de acceso de carpeta en ese proyecto para los que tiene acceso de lectura: no verá ningún proyecto ni carpeta para el que no tenga permiso de lectura. Seleccione rutas de acceso en el árbol de carpetas para restringir la búsqueda si es necesario.

Sugerencia

Code Search recuerda la última configuración, como el proyecto y el repositorio o la ruta de acceso en la que ha buscado. Desactive las casillas para buscar en todos los proyectos fácilmente con borrar todos los vínculos cuando desee buscar en un ámbito diferente. En el panel de resultados, Code Search resalta hasta los 100 primeros aciertos o coincidencias encontrados en los archivos de destino.

Búsqueda de código con la API REST

Puede usar las API para ampliar o complementar las funcionalidades enumeradas en este artículo. Para obtener información sobre Code Search con la API REST, consulte Fetch Code Search Results.

Pasos siguientes