Поиск функционального кода

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Найдите нужный код быстрее с помощью функционального поиска кода. В этой статье объясняется, как уточнить поиск в репозиториях с помощью типов кода и других функций с расширением Azure DevOps для Поиска кода.

Необходимые компоненты

Дополнительные сведения см. в разделе "Установка и настройка поиска".

  • Чтобы использовать поиск кода, необходимо иметь по крайней мере базовый доступ.
  • Пользователи с доступом заинтересованных лиц не имеют доступа к коду, поэтому они не могут искать код.
  • Пользователи с доступом заинтересованных лиц для общедоступного проекта имеют полный доступ к коду, чтобы они могли искать код. Чтобы получить доступ к коду в частном проекте, необходимо иметь по крайней мере базовый доступ.
  • При поиске в организации или коллекции отображаются только результаты, для которых у члена проекта есть доступ.

Рекомендации по поиску кода

  • Начните с широкого поиска, а затем используйте операторы фильтра, чтобы сузить его по проекту, репозиторию, пути, имени файла и многое другое.
  • Если вы не знаете точного термина, используйте дикие карта ы для расширения поиска и логических операторов для уточнения.
  • Чтобы получить дополнительные сведения о элементе кода, наведите на него указатель мыши и используйте контекстное меню для поиска этого текста во всех проектах и файлах.
  • Чтобы отслеживать работу кода, используйте контекстное меню для поиска связанных элементов, таких как определения и ссылки в файле или в результатах поиска.
  • Чтобы найти реализацию API или другого элемента кода, используйте фильтры типов кода для поиска конкретных типов кода, таких как:
    • политики
    • ссылки
    • functions
    • comments
    • строки
    • пространства имен и многое другое.

Примечание.

Поиск кода не работает для вилированных репозиториев.

Функции для поиска определенных типов кода

Чтобы быстрее создать запрос, выберите функции и ключевое слово из раскрывающегося списка при вводе. Нажмите кнопку "Показать больше", чтобы просмотреть все параметры. При необходимости можно объединить различные функции.

Вы также можете использовать фильтры из левого столбца, чтобы сузить поиск. Показать дополнительные сведения о всех функциях и ключевое слово.

Кроме того, можно ввести функции и параметры в поле поиска. В таблице ниже перечислены функции для поиска определенных типов или членов в коде C#, C,C++, Java и Visual Basic.NET.

Чтобы найти код, где findThis отображается как ... ... поиск аргумента arg:findThis
Аргумент arg:findThisDeprecated in July 2019
Базовый тип basetype:findThis
Вызывающая функция caller:findThisDeprecated in July 2019
Определение класса или объявление class:findThis
объявление класса classdecl:findThisMerged with class:
Определение класса classdef:findThisMerged with class:
Комментарий comment:findThis
Конструктор ctor:findThisMerged with method:
Объявление decl:findThis
Определение def:findThis
Деструктор dtor:findThisMerged with method:
Перечислитель enum:findThis
Extern extern:findThisDeprecated in July 2019
Поле field:findThis
Функция "Друг" друг:findThisDeprecated in July 2019
Function func:findThisMerged with method:
Объявление функции funcdecl:findThisMerged with method:
Определение функции funcdef:findThisMerged with method:
Глобальный global:findThisDeprecated in July 2019
Верхний колонтитул header:findThisDeprecated in July 2019
Интерфейс interface:findThis
Макрос macro:findThis
Определение макроса macrodef:findThisMerged with macro:
Справочник по макросам macroref:findThisMerged with macro:
Способ method:findThis
Объявление метода methoddecl:findThisMerged with method:
Определение метода methoddef:findThisMerged with method:
Пространство имен namespace:findThis
Свойство prop:findThis
Справочные материалы ref:findThis
Строковый литерал strlit:findThis
Структура struct:findThisMerged with type:
Объявление структуры structdecl:findThisMerged with type:
Определение структуры structdef:findThisMerged with type:
Аргумент шаблона tmplarg:findThisDeprecated in July 2019
Спецификация шаблона tmplspec:findThisDeprecated in July 2019
Тип type:findThis
Typedef typedef:findThisMerged with type:
Объединение union:findThisDeprecated in July 2019

Функции для выбора проектов, репозиториев, путей и файлов

Функции упрощают поиск по указанным расположениям, определенным типам файлов в этих расположениях или указанным именам файлов. Сузите поиск по определенному расположению с помощью projфильтров repoили path параметров. Смешивайте и сопоставляйте следующие функции по мере необходимости.

Использование Пример
Найдите все вхождения слова QueueJobsNow в проекте Fabrikam. QueueJobsNow proj:Fabrikam
Найдите все вхождения слова QueueJobsNow в репозитории Contoso. QueueJobsNow repo:Contoso
Найдите все вхождения слова QueueJobsNow в пути VisualStudio/Services/Framework и его подпаты. QueueJobsNow path:VisualStudio/Services/Framework
Найдите все вхождения слова QueueJobsNow в пути */Doc*/Framework/* и */Doc*/*/*/Framework/* и его подпаты. Шаблон глоббинга (**) соответствует нулю или нескольким символам в нескольких сегментах. Например, path:**/Doc**/Framework также будет соответствовать abc/DocTest/gh/ijk/mnop/Framework/ QueueJobsNow path:**/Doc**/Framework
Найдите все вхождения слова QueueJobsNow в пути */Doc*/Framework/* и его подпаты и имя файла Test*.txt (используйте шаблон globbing ***). Например, path:**/Doc**/Framework/**/Test**.txt также соответствует abc/def/Doc A/gh/Framework/TestMisc.Txt QueueJobsNow path:**/Doc**/Framework/**/Test*.txt
Заключите аргумент в фильтр в двойные кавычки, если он содержит пробел. QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services"
Найдите все вхождения слова QueueJobsNow во всех файлах, где имя файла начинается с queueRegister. QueueJobsNow file:queueRegister*
Найдите все файлы с именем QueueRegister без расширения. Используйте кавычки для поиска файлов без расширений. file:"queueRegister"
Найдите все вхождения слова QueueJobsNow только в исходных файлах C#. Строка поиска обычного текста, которая не включает функции типа файлов, также находит файлы, в которых строка соответствует части имени файла. QueueJobsNow ext:cs

Поиск кода позволяет интерактивно расширить поиск на основе предыдущих результатов. Например, можно расширить поиск по связанным файлам при трассировке или отладке кода.

Щелкните правой кнопкой мыши термин в файле и запустите новый поиск других файлов с тем же термином. Его можно найти в виде текста или в качестве определения или ссылки, если это имя объекта.

Дополнительные сведения о следующих функциях поиска см. в статье "Начало работы с поиском"

  • Ключевое слово
  • Точное совпадение
  • Подстановочный знак
  • Логические операторы
  • Proximity

Дополнительные операции поиска кода

Ниже приведены некоторые другие функции поиска кода. Вы можете искать типы кода в файлах C#, C,C++, Java и Visual Basic.NET. Чтобы открыть результаты поиска на новой вкладке, нажмите клавиши CTRL + ВВОД в главном поле поиска. Чтобы перейти на новую вкладку Google Chrome, нажмите клавиши CTRL + SHIFT + ВВОД.

Использование Пример
Поиск всех комментариев History:Keyword
Поиск всех экземпляров комментариев ToDo в коде Выберите comment: и введите todo
Поиск в определенных расположениях, например в пределах определенного пути Используйте строку поиска, например Driver path:MyShuttle/Server
Поиск файлов по имени или только по расширению файла Driver file:GreenCabs.cs. Строка error ext:resx поиска может оказаться полезной, если вы хотите просмотреть все строки ошибок в коде. Даже если строка поиска обычного текста соответствует части имени файла, файл отображается в списке найденных файлов. Этот поиск работает без сопоставления определенных функций типа файла.

Поиск проектов и репозиториев Git

Проект Git содержит список репозиториев. Чтобы развернуть поиск, проверка поля проекта и репозитория. Вы можете искать все или несколько проектов или меньше проектов и репозиториев. Если существует множество проектов или репозиториев, нажмите кнопку "Показать больше ", чтобы просмотреть их все.

Поиск кода может индексировать различные ветви в репозитории Git. Он индексирует файлы только в ветвь по умолчанию репозиториев Git по умолчанию. Ветвь по умолчанию обычно является основным. Чтобы индексировать другие ветви, перейдите на вкладку "Параметры" в разделе репозиториев страницы параметров проекта.

Снимок экрана: ветви Git для настройки.

Поиск проектов TFVC

Проекты TFVC отображают только папки, которые можно прочитать. Другие проекты или папки не отображаются. Чтобы отфильтровать поиск, выберите папки из дерева.

Совет

Поиск кода сохраняет последние параметры, такие как проект и репозиторий или путь, в который вы искали. Если вы хотите выполнить поиск в другой область, выберите "Очистить все ссылки", чтобы очистить проверка boxes и выполнить поиск по всем проектам. Первые 100 попаданий или совпадений в целевых файлах выделены поиском кода в области результатов.

Поиск кода с помощью REST API

Api можно использовать для расширения или дополнения возможностей, перечисленных в этой статье. Сведения о поиске кода с помощью REST API см. в разделе "Получение результатов поиска кода".

Следующие шаги