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
- Instalar Code Search
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 |
Buscar elementos relacionados u otros términos
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.

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.