Поиск функционального кода
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Найдите нужный код быстрее с помощью функционального поиска кода. В этой статье объясняется, как уточнить поиск в репозиториях с помощью типов кода и других функций с расширением поиска кода Marketplace для Azure DevOps.
Необходимые условия
- уровни доступа:
-
базовый доступ:
- Чтобы использовать поиск кода, у вас есть по крайней мере базовый доступ.
- Чтобы получить доступ к коду в частном проекте, имеется по крайней мере базовый доступ.
-
доступ к заинтересованным лицам:
- Пользователи с доступом заинтересованных лиц не имеют доступа к коду, поэтому они не могут искать код.
- Пользователи с доступом заинтересованных лиц для общедоступного проекта имеют полный доступ к коду, чтобы они могли искать код.
-
базовый доступ:
-
Результаты поиска:
- Результаты на основе прав доступа: При поиске в организации или коллекции отображаются только те результаты, к которым у члена проекта есть доступ.
- уровни доступа:
-
Базовый доступ:
- Чтобы использовать поиск кода, у вас есть по крайней мере базовый доступ.
- Чтобы получить доступ к коду в частном проекте, имеется по крайней мере базовый доступ.
-
доступ к заинтересованным лицам:
- Пользователи с доступом заинтересованных лиц не имеют доступа к коду, поэтому они не могут искать код.
-
Базовый доступ:
-
Результаты поиска:
- Результаты на основе доступа: при поиске по организации или коллекции отображаются только результаты, к которым у члена проекта есть доступ.
-
Средства:
- Установите поиск кода.
Рекомендации по поиску кода
- Начните с общего поиска: Начните с широкого поиска, а затем используйте операторы фильтрации, чтобы сузить его по проекту, репозиторию, пути, имени файла и т. д.
- Используйте подстановочные знаки и логические операторы: Если вы не знаете точный термин, используйте подстановочные знаки для расширения поиска и логические операторы для его уточнения.
- Наведите указатель мыши для получения дополнительной информации: Чтобы получить более подробные сведения о коде, наведите на него курсор и воспользуйтесь всплывающим меню для поиска этого текста во всех ваших проектах и файлах.
- Функциональность трассировки кода: Используйте контекстное меню для поиска связанных элементов, таких как определения и ссылки в файле или в результатах поиска, чтобы определить, как функционирует ваш код.
-
Использовать фильтры типов кода: Чтобы найти реализацию API или другого элемента кода, используйте фильтры типов кода для поиска конкретных типов кода, таких как:
- Определения
- Ссылки
- Функции
- Комментарии
- Строки
- Пространства имен и другие возможности
Заметка
Поиск кода не работает для вилированных репозиториев.
Функции для поиска определенных типов кода
Чтобы быстрее создать запрос, выберите функции и ключевые слова из раскрывающегося списка при вводе текста. Выберите Показать больше, чтобы просмотреть все параметры. При необходимости можно объединить различные функции.
Вы также можете использовать фильтры из левого столбца, чтобы сузить поиск. Показать больше отображает все функции и ключевые слова.
Кроме того, можно ввести функции и параметры в поле поиска. В следующей таблице перечислены функции для поиска определенных типов или членов в коде C#, C,C++, Java и Visual Basic.NET.
Чтобы найти код, в котором findThis появляется как ... | ... поиск аргумента arg:findThis |
---|---|
Аргумент |
arg:findThisDeprecated in July 2019 |
Базовый тип | базовый тип :findThis |
Вызывающая функция | вызывающий объект :findThisDeprecated in July 2019 |
Определение класса или объявление | класс :findThis |
Объявление класса |
classdecl:findThisMerged with class: |
Определение класса | classdef :findThisMerged with class: |
Комментарий | комментарий :findThis |
Конструктор |
ctor:findThisMerged with method: |
Декларация | decl:findThis |
Определение | def:findThis |
Разрушитель |
dtor:findThisMerged with method: |
Перечислитель | перечисление :findThis |
Внешний |
экстерн:findThisDeprecated in July 2019 |
Поле | поле :findThis |
Функция "Друг" |
друг:findThisDeprecated in July 2019 |
Функция |
func:findThisMerged with method: |
Объявление функции |
funcdecl:findThisMerged with method: |
Определение функции |
funcdef:findThisMerged with method: |
Глобальный | глобальный :findThisDeprecated in July 2019 |
Заголовок | заголовок :findThisDeprecated in July 2019 |
Интерфейс | интерфейс :findThis |
Макрос | макрос :findThis |
Определение макроса | макрос :findThisMerged with macro: |
Справочник по макросам | макрос :findThisMerged with macro: |
Метод | метод :findThis |
Объявление метода | метод :findThisMerged with method: |
Определение метода | метод :findThisMerged with method: |
Пространство имен | пространство имен :findThis |
Свойство | prop:найтиЭто |
Ссылка | ссылка:findThis |
Строковый литерал | strlit:найдитеЭто |
Структура |
структуры:findThisMerged with type: |
Объявление структуры |
structdecl:findThisMerged with type: |
Определение структуры |
структураопред:findThisMerged with type: |
Аргумент шаблона |
tmplarg:findThisDeprecated in July 2019 |
Спецификация шаблона |
tmplspec:findThisDeprecated in July 2019 |
Тип | тип :findThis |
Typedef |
typedef:findThisMerged with type: |
Союз | объединение :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 **). Например, путь: **/Doc**/Framework/**/Test*.txt также соответствует abc/def/DocA/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 |
Поиск связанных элементов или других терминов
Поиск кода позволяет интерактивно расширить поиск на основе предыдущих результатов. Например, можно расширить поиск по связанным файлам при трассировке или отладке кода.
Щелкните правой кнопкой мыши термин в файле и запустите новый поиск других файлов с тем же термином. Его можно найти как текст или как определение или ссылку, если это имя объекта.
Дополнительные сведения см. в статье Начало работы с поиском.
Дополнительные операции поиска кода
Ниже приведены некоторые другие функции поиска кода. Вы можете искать типы кода в файлах C#, C,C++, Java и Visual Basic.NET. Чтобы открыть результаты поиска на новой вкладке, выберите Ctrl + Enter в главном поле поиска. Чтобы перейти на новую вкладку в Google Chrome, нажмите Ctrl + Shift + Enter.
Использование | пример |
---|---|
Поиск всех комментариев | History:Keyword |
Найдите все вхождения комментариев ToDo в коде | Выберите comment: и введите todo |
Поиск в определенных расположениях, например в пределах определенного пути | Используйте строку поиска, например Driver path:MyShuttle/Server |
Поиск файлов по имени или только по расширению файла |
Driver file:GreenCabs.cs . Строка поиска error ext:resx может оказаться полезной, если вы хотите просмотреть все строки ошибок в коде. Даже если строка поиска обычного текста соответствует части имени файла, файл отображается в списке найденных файлов. Этот поиск работает без сопоставления определенных функций типа файла. |
Поиск проектов и репозиториев Git
Проект Git содержит список репозиториев. Чтобы расширить поиск, отметьте поля проекта и репозитория. Вы можете искать все или несколько проектов или меньше проектов и репозиториев. Если есть много проектов или репозиториев, выберите Показать больше, чтобы просмотреть их все.
Поиск кода может индексировать различные ветви в репозитории Git. Он по умолчанию индексирует файлы только в ветви по умолчанию репозиториев Git. Основная ветка по умолчанию — main. Чтобы индексировать другие ветви, перейдите на вкладку "Параметры
Заметка
По умолчанию, поиск кода ищет указанную строку в главной ветви или ветви по умолчанию репозитория. Но можно сузить поиск, указав фильтр для определенной ветви.
Поиск проектов TFVC
Проекты TFVC отображают только папки, которые можно прочитать. Другие проекты или папки не отображаются. Чтобы отфильтровать поиск, выберите папки из дерева.
Совет
Поиск кода сохраняет последние параметры, такие как проект и репозиторий или путь, в который вы искали. Если вы хотите выполнить поиск в другой области, выберите Очистить все ссылки, чтобы очистить флажки и выполнить поиск по всем проектам. Первые 100 результатов или совпадений в целевых файлах выделены поиском кода в панели результатов.
Поиск кода с помощью REST API
Api можно использовать для расширения или дополнения возможностей, перечисленных в этой статье. Сведения о поиске кода с помощью REST API см. в разделе Результаты поиска кода.
Дальнейшие действия
Связанные статьи
- Начало работы с поиском
- поиск артефактов и пакеты
- Поиск рабочих элементов