И у вас есть много других примеров поиска, основанных на подписчиках , или на вилках , или ...
Обновление июль 2012 г. (старые времена поиска Lucene и плохая индексация кода в сочетании с неработающим графическим интерфейсом хранятся здесь для архивирования):
Поиск (основанный на SolrQuerySyntax ) теперь более разрешающий, и страшный " Invalid search query. Try quoting it." исчезает при использовании селектора поиска по умолчанию "Все" :)
Выберите Code, Repositoriesили Usersиз раскрывающегося списка и
используйте соответствующие префиксы, перечисленные для этого типа поиска .
Например, используйте repo:username/repo-nameдирективу, чтобы ограничить поиск хранилищем кода .
Начальная Advanced Searchстраница " " включает раздел:
Поиск кода :
Поиск по коду просматривает весь код, размещенный на GitHub. Вы также можете фильтровать по:
язык language:
имя хранилища (включая имя пользователя) repo:
путь к файлу path:
Поэтому, если вы выберете Codeселектор поиска " ", тогда ваш запрос для текста в репо будет работать:
Что невероятно бесполезно от GitHub, так это:
если вы забудете поставить правильный селектор поиска (здесь " Code"), вы получите сообщение об ошибке:
" Invalid search query. Try quoting it."
сообщение об ошибке не поможет вам вообще.
Никакое количество " quoting it" не поможет вам избежать этой ошибки.
как только вы получите это сообщение об ошибке, вы не получите разделы, напоминающие вам о правильной связи между поисковыми селекторами (" Repositories", " Users" или " Language") и (правыми) поисковыми фильтрами (здесь " repo:").
Любая дальнейшая попытка не отобразит эти ассоциации (селекторы-фильтры). Только сообщение об ошибке, которое вы видите выше ...
Единственный способ вернуть эти массивы - щелкнуть значок " Advance Search":
EverythingСелектор поиска " ", который является настройкой по умолчанию, на самом деле является неправильным для всех фильтров поиска! За исключением " language:" ...
(Вы можете представить / предположить, что " Everything" поможет вам выбрать любой селектор поиска, который действительно работает с поисковым фильтром " repo:", но нет. Это было бы слишком просто)
Вы не можете указать нужный селектор поиска только через поле " Advance Search"!
(но вы можете использовать для " language:", хотя " Search Language" - это еще одно поле со списком чуть ниже Search for"" типа ") ...
Итак, пользовательский опыт обычно выглядит следующим образом:
Вы нажимаете « Advanced Search», просматриваете эти разделы фильтров и замечаете тот, который хотите использовать: « repo:»
Вы делаете первый расширенный поиск " repo:jruby/jruby stat", но с селектором поиска по умолчанию " Everything"
=> FAIL! (и массивы, отображающие ассоциацию «Селекторы-Фильтры», исчезли )
вы заметили, что «Поиск» селекторной штуки, выберите первый вариант » Repositories(« Да! Я хочу искать в репозиториях ... »)
=> FAIL!
отклоненный, вы выбираете следующий выбор селекторов (здесь, " Users"), даже не глядя на упомянутый селектор, просто чтобы дать ему еще одну попытку ...
=> FAIL!
«Винт это, поиск GitHub будет сломан ! Я отсюда!»
... (Расширенный поиск GitHub на самом деле не сломан. Только их графический интерфейс ...)
Итак, подведем итог: если вы хотите «найти что-то внутри кода проекта Github», как OP Ben Humphreys , не забудьте выбрать « Code» селектор поиска ...
FWIW Я связался с GitHub, потому что я не получал никаких результатов поиска при ограничении поисков для моих репозиториев. Тим Пиз ответил, что у них возникли проблемы с объемом индексов репо, поэтому они мигрировали на сегментированные серверы индексов. Там нет ETA, когда все репо будут перенесены.
М. Дадли
3
Я только что воспользовался советом из этого ответа, и он работает и для меня, но я должен добавить одно предостережение. Имя репо всегда должно быть в нижнем регистре, даже если GitHib перечисляет его везде другим способом. Например, (после установки раскрывающегося списка «Код» и т. Д., Как описано выше) попробуйте выполнить тот же поиск с помощью: repo: wordpress / wordpress против repo: WordPress / WordPress ... только первый из них даст результаты.
Этанпил
22
Последние частные репозитории имеют поле поиска для поиска в этом репо.
Как ни странно, похоже, что эта функция недоступна для публичных репозиториев.
Интересно, является ли это скромным коммерческим шагом, чтобы заставить людей перейти на платную версию? Не похоже на github, но все же.
Сильвен
3
@Sylvain Не думаю, что это делается как поощрение для обновления, так как даже после обновления вы не получите это поле поиска для общедоступных репозиториев. Вместо этого я думаю, что основной поиск использует индекс, который не включает частные репозитории, и поэтому вы не теряете функциональность при оплате частного репозитория, им пришлось добавить другой способ поиска только в этом частном репозитории, следовательно, дополнительный текстовое поле.
Avernet
2
Представьте себе, что у них есть поисковый индекс для каждой строки кода в каждом репо! Безумный! Вот почему они делают это только для частных репозиториев ..
Джонни Нотт
1
Поиск теперь в заголовке, так же, как глобальный поиск.
Тиб
20
ОБНОВИТЬ
Взлом букмарклета ниже сломан из-за проблем XHR и изменений API.
Следуйте указаниям там, или, если вы ненавидите раздувать ваш браузер с помощью скриптов и расширений, воспользуйтесь моей закладкой из пользовательского скрипта:
Сохраните приведенный выше источник как URL новой закладки. Перейдите к любому репозиторию Github, щелкните по закладке и выберите bam : in-page, ajaxified .
CAVEAT Github должен проиндексировать репо, прежде чем вы сможете его искать.
Абракадабра ...
Вот пример поиска из аннотированного репозитория спецификации ECMAScript 5.1:
Когда я использую плагин (Chrome), он прекрасно работает в репозитории scratchdot / github-code-search, но не в любом другом репо.
forforf
Это должно работать на домашней странице любого репо. Возможно, вы пытаетесь с другой страницы? Я разместил скриншот примера поиска в другом репозитории в своем сообщении.
Fny
Ага! Я на самом деле обнаружил, почему эти поиски могут быть неудачными: репо должно ждать своей очереди для индексации. Я подозреваю, что учитывая миллионы активных репозиториев, это занимает немного времени.
2012 г.,
2
@ user456584 это для меня новость. Возможно, вы захотите сообщить об этом Google и Mozilla .
Fny
2
Я понял, почему плагин не работает, потому что имя репо должно быть в нижнем регистре. (См. Мой комментарий к ответу VonC выше). Я уже представил патч на GitHub, надеюсь, его увидит оригинальный автор. github.com/skratchdot/github-code-search.user.js/pull/5
ethanpil
10
Хотя ответ @ VonC работает для некоторых репозиториев, к сожалению, для многих репозиториев вы не можете прямо сейчас. Github просто не индексирует их (как первоначально писал @emddudley). Они нигде не заявили об этом на своем веб-сайте, но они скажут вам, если вы попросите поддержки:
От: Тим Пиз
Мы прекратили добавлять недавно вставленный код в наш индекс поиска кода. Объем кода перерос наш текущий поисковый индекс, и мы работаем над переходом к более масштабируемой поисковой архитектуре. Я извиняюсь за раздражение. У нас нет оценки того, когда этот новый поисковый индекс будет запущен и работает, но когда он будет готов, будет опубликовано сообщение в блоге (https://github.com/blog).
Досадно, что нет способа определить, какие репозитории не проиндексированы, кроме отсутствия результатов (что также может быть связано с неправильным запросом).
Также нет способа отследить эту проблему, кроме как ждать, пока они не опубликуют ее (или посмотреть здесь на SO).
От: Тим Пиз
Я боюсь, что наш трекер проблем является внутренним, но мы можем уведомить вас, как только будет запущен новый поисковый индекс.
Они должны по крайней мере упомянуть, что некоторые результаты поиска могут быть опущены. Это полностью отстой, когда я рефакторинг кода и я ищу вхождения кода, которые есть, но не упомянутые GitHub
Я ищу исходный код внутри репозитория Github с бесплатным расширением Sourcegraph Chrome
... Но я сначала скачал Chrome , я знал, что другие браузеры поддерживают его, например, - и, возможно, только - Firefox.
Ответы:
Обновление января 2013: новый поиск прибыл! , основанный наasticsearch.org :
Поиск статистики в репо ruby будет выражаться как
stat repo:ruby/ruby
, и теперь будет работать только ТМ .(имя репо не чувствительно к регистру:
test repo:wordpress/wordpress
возвращает так же, какtest repo:Wordpress/Wordpress
)Дам:
И у вас есть много других примеров поиска, основанных на подписчиках , или на вилках , или ...
Обновление июль 2012 г. (старые времена поиска Lucene и плохая индексация кода в сочетании с неработающим графическим интерфейсом хранятся здесь для архивирования):
Поиск (основанный на SolrQuerySyntax ) теперь более разрешающий, и страшный "
Invalid search query. Try quoting it.
" исчезает при использовании селектора поиска по умолчанию "Все" :)(Я полагаю, что мы можем все, кроме Тима Пиза , который преследовал одну из своих целей - «взломать улучшенный опыт поиска для всех свойств GitHub », и я упоминал этот вопрос переполнения стека в то время;))
Вот иллюстрация grep в коде ruby: он будет искать репозитории и пользователей, а также то, что я хотел искать в первую очередь: код!
Первоначальный ответ и иллюстрация предыдущего номера (сентябрь 2012 г. => март 2012 г.)
Вы можете использовать форму расширенного поиска GitHub :
Code
,Repositories
илиUsers
из раскрывающегося списка иНапример, используйте
repo:username/repo-name
директиву, чтобы ограничить поиск хранилищем кода .Начальная
Advanced Search
страница " " включает раздел:Поэтому, если вы выберете
Code
селектор поиска " ", тогда ваш запрос для текста в репо будет работать:Что невероятно бесполезно от GitHub, так это:
Code
"), вы получите сообщение об ошибке:"
Invalid search query. Try quoting it.
"сообщение об ошибке не поможет вам вообще.
Никакое количество "
quoting it
" не поможет вам избежать этой ошибки.как только вы получите это сообщение об ошибке, вы не получите разделы, напоминающие вам о правильной связи между поисковыми селекторами ("
Repositories
", "Users
" или "Language
") и (правыми) поисковыми фильтрами (здесь "repo:
").Любая дальнейшая попытка не отобразит эти ассоциации (селекторы-фильтры). Только сообщение об ошибке, которое вы видите выше ...
Единственный способ вернуть эти массивы - щелкнуть значок "
Advance Search
":Everything
Селектор поиска " ", который является настройкой по умолчанию, на самом деле является неправильным для всех фильтров поиска! За исключением "language:
" ...(Вы можете представить / предположить, что "
Everything
" поможет вам выбрать любой селектор поиска, который действительно работает с поисковым фильтром "repo:
", но нет. Это было бы слишком просто)Вы не можете указать нужный селектор поиска только через поле "
Advance Search
"!(но вы можете использовать для "
language:
", хотя "Search Language
" - это еще одно поле со списком чуть нижеSearch for
"" типа ") ...Итак, пользовательский опыт обычно выглядит следующим образом:
Advanced Search
», просматриваете эти разделы фильтров и замечаете тот, который хотите использовать: «repo:
»repo:jruby/jruby stat
", но с селектором поиска по умолчанию "Everything
"=>
FAIL
! (и массивы, отображающие ассоциацию «Селекторы-Фильтры», исчезли )Repositories
(« Да! Я хочу искать в репозиториях ... »)=>
FAIL
!Users
"), даже не глядя на упомянутый селектор, просто чтобы дать ему еще одну попытку ...=>
FAIL
!...
(Расширенный поиск GitHub на самом деле не сломан. Только их графический интерфейс ...)
Итак, подведем итог: если вы хотите «найти что-то внутри кода проекта Github», как OP Ben Humphreys , не забудьте выбрать «
Code
» селектор поиска ...источник
repo:"jruby/jruby" stat
repo:"jruby" stat
jruby: stat
ничего из того, что работаетПоследние частные репозитории имеют поле поиска для поиска в этом репо.
Как ни странно, похоже, что эта функция недоступна для публичных репозиториев.
источник
ОБНОВИТЬ
Взлом букмарклета ниже сломан из-за проблем XHR и изменений API.
К счастью, у Github теперь есть «Поиск по всему новому коду», который отлично справляется со своей задачей.
источник
Хотя ответ @ VonC работает для некоторых репозиториев, к сожалению, для многих репозиториев вы не можете прямо сейчас. Github просто не индексирует их (как первоначально писал @emddudley). Они нигде не заявили об этом на своем веб-сайте, но они скажут вам, если вы попросите поддержки:
Досадно, что нет способа определить, какие репозитории не проиндексированы, кроме отсутствия результатов (что также может быть связано с неправильным запросом).
Также нет способа отследить эту проблему, кроме как ждать, пока они не опубликуют ее (или посмотреть здесь на SO).
источник
Гугл позволяет искать в проекте, но не код :(
сайт: https: //github.com/CreateJS/EaselJS test
источник
Я ищу исходный код внутри репозитория Github с бесплатным расширением Sourcegraph Chrome ... Но я сначала скачал Chrome , я знал, что другие браузеры поддерживают его, например, - и, возможно, только - Firefox.
Я пролистал документы расширения Chrome SourceForge, а затем посмотрел, что мне нужно для поиска имен каталогов с помощью самой поисковой системы Github, прочитав некоторые из документов поиска Gitub's Codebase.
источник