Skip to main content

Сведения о поиске кода GitHub

Вы можете выполнять поиск, навигацию и понимание кода в GitHub с помощью поиска кода.

О поиске кода GitHub

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

Поиск кода интегрирован с функциями в интерфейсе поиска на GitHub.com, таких как предложения и завершения. Ваши поисковые запросы будут сохранены автоматически и могут быть удалены в любое время. В GitHub Mobileможно использовать те же методы для поиска по коду непосредственно с домашнего экрана. Дополнительные сведения см. в разделе Использование поиска кода GitHub.

Для использования поиска кода в общедоступных репозиториях необходимо войти в учетную запись GitHub.

Обратите внимание, что синтаксис и квалификаторы для поиска содержимого, отличного от кода, таких как проблемы, пользователи и обсуждения, не совпадают с синтаксисом для поиска кода. Дополнительные сведения о поиске, отличном от кода, см. в разделе "[AUTOTITLE" и "Сведения о поиске в GitHub](/search-github/searching-on-github)".

Навигация по коду

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

Поддерживаемые языки для навигации по коду:

  • Bash
  • C
  • C#
  • C++
  • CodeQL
  • Elixir
  • Go
  • JSX
  • Java
  • JavaScript
  • Lua
  • PHP
  • Protocol Buffers
  • Python
  • R
  • Ruby
  • Rust
  • Scala
  • Starlark
  • Swift
  • Typescript

Ограничения

Мы индексировали множество общедоступных репозиториев для поиска кода и продолжаем индексировать больше. Кроме того, частные репозитории пользователей GitHub индексируются и доступны для поиска теми, кто уже имеет доступ к этим частным репозиториям на GitHub.com. Однако в настоящее время очень большие репозитории могут не индексироваться, а не все коды индексируются.

Текущие ограничения индексированного кода:

  • Поставщик и созданный код исключен
  • Пустые файлы и файлы более 350 КИБ исключены
  • Линии длиной более 1024 символов усечены
  • Двоичные файлы (PDF и т. д.) исключены
  • Включены только файлы в кодировке UTF-8
  • Очень большие репозитории могут не индексироваться
  • Исчерпывающий поиск не поддерживается
  • Файлы с несколькими строками более 4096 байт исключаются

В настоящее время мы поддерживаем поиск кода только в ветвь по умолчанию репозитория. Длина запроса ограничена 1000 символами.

Результаты для любого поиска с поиском кода ограничены 100 результатами (5 страниц). В настоящее время сортировка не поддерживается для результатов поиска кода. Это ограничение применяется только к поиску кода с помощью нового поиска кода и не применяется к другим типам поисковых запросов.

Если вы используете path: квалификатор для файла, который находится в нескольких репозиториях с аналогичным содержимым, GitHub будет отображать только несколько этих файлов. В этом случае можно развернуть, щелкнув "Показать идентичные файлы " в нижней части страницы.

Поиск кода поддерживает поиск определений символов в коде, таких как определения функций или классов, с помощью symbol: квалификатора. Однако обратите внимание, что symbol: квалификатор ищет только определения и не ссылается, а не все типы символов или языки пока полностью поддерживаются. Список поддерживаемых языков см. в разделе "Общие сведения о синтаксисе поиска кода GitHub".

На GitHub Mobileможно использовать поиск кода непосредственно на домашнем экране. Дополнительные сведения см. в разделе "Использование поиска кода GitHub".

Отзывы и поддержка

Вы можете просмотреть и поделиться отзывами о поиске кода на форуме обсуждений.