Как искать с помощью логических операторов на GitHub?

23

GitHub имеет поисковую систему , основанную на эластичном поиске, которая имеет много продвинутых функций, таких как поиск по хранилищам или пользователям. Используя Google, я могу искать альтернативы в GitHub . Однако синтаксис поиска в GitHub охватывает только оператор отрицания .

Как использовать другие логические операторы в поиске GitHub?

Может быть, есть функция в эластичном поиске, которую можно использовать для фильтрации или объединения булевых запросов?

Бенгт
источник
4
Стоит отметить, что AND и OR больше не доступны.
StingyJack

Ответы:

9

GitHub встроенный в поисковых Охватывает and, notи orоператоры, а также различных других сравнений. Общие рекомендации GitHub по поиску находятся здесь: https://help.github.com/articles/searching-github/

Синтаксис его поиска описан здесь: https://help.github.com/articles/search-syntax/

Мишельфрансис Бустильос
источник
1
Да, AND, NOTи ORработа теперь. Спасибо за Ваш ответ!
Бенгт
23
Ничто в этих ссылках не объясняет, как использовать ANDили OR, и они не работают для меня.
Кристофер
12

Поиск по умолчанию работает так, как будто между каждой парой ключ-значение поиска есть подразумеваемый оператор AND:

is:pr is:open author:monishdeb

Если вы задаете более одной пары ключ-значение для ключа, он использует последнюю и подавляет более ранние в запросе при представлении результатов.

Расширенный поиск работает так, как будто между каждой парой ключ-значение поиска есть подразумеваемый оператор ИЛИ:

author:monishdeb author:pradpnayak repo:civicrm/civicrm-core

Нет никакого способа объединить найденные мной операторы AND и OR. Так что я не думаю, что можно найти открытые PR от любого из нескольких авторов для одного репо.

Оператор NOT может использоваться для исключения строк: https://help.github.com/articles/understanding-the-search-syntax/

Джо Мюррей
источник
Я смог подтвердить, что в поиске GraphQL API есть неявное ИЛИ между терминами, по крайней мере, когда я искал несколько репозиториев с помощьюrepo:
Джош Дзиелак