Google предстaвил систему поиска и навигации по коду своих открытых проектов

Компания Google представила новый поисковый сервис cs.opensource.google, предназначенный для поиска по коду в git-репозиториях открытых проектов, разработка которых ведётся при участии Google. Из проиндексированных проектов отмечаются Angular, Bazel, Dart, ExoPlayer, Firebase SDK, Flutter, Go, gVisor, Kythe, Nomulus, Outline и Tensorflow. Аналогичные поисковые системы ранее были запущены для поиска по коду Chromium и Android.

В поисковых запросах могут применяться регулярные выражения и уточнения (например, можно указать что нужно найти функцию, имя которой соответствует указанной маске, а также определить в коде на каком языке программирования следует выполнять поиск). Для построения графа связей в проекте и межссылочной навигации применяется инструментарий Kythe. Какой именно задейсвован поисковый движок не уточняется, но Google развивает два открытых проекта для поиска по коду — zoekt и codesearch.

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

Источник: http://www.opennet.ru/opennews/art.shtml?num=52668