Update Dez. 2021: Die Suche hat erneut verbessert worden mit Suche nach einer exakten Zeichenkette, mit Unterstützung für Teilstring-Übereinstimmungen und Sonderzeichen oder Regexps.
Aber nur auf cs.github.com und noch in der Beta-Phase (es gilt die Warteliste)
Update Januar 2013: a Die brandneue Suche ist da! auf der Grundlage elasticsearch.org :
Eine Suche nach stat innerhalb des ruby repo wird wie folgt ausgedrückt stat repo:ruby/ruby
und wird jetzt einfach funktionieren TM .
(Der Name des Projektarchivs unterscheidet nicht zwischen Groß- und Kleinschreibung: test repo:wordpress/wordpress
gibt dasselbe zurück wie test repo:Wordpress/Wordpress
)
Wird geben:
Und es gibt viele andere Beispiele für die Suche, die auf bei Anhängern , oder auf Gabeln , oder...
Aktualisierung Juli 2012 (alte Tage der Lucene-Suche und schlechte Code-Indizierung, kombiniert mit kaputter GUI, hier für das Archiv aufbewahrt):
Die Suche (basierend auf SolrQuerySyntax ) ist jetzt freizügiger und die gefürchtete " Invalid search query. Try quoting it.
" ist verschwunden, wenn man die Standard Suchselektor "Alles":)
(Ich nehme an, wir können alle als Tim Pease der als eines seiner Ziele hatte "Hacken auf verbesserten Suchergebnissen für alle GitHub-Eigenschaften ", und Ich habe diese Stack Overflow-Frage erwähnt zu der Zeit ;) )
Hier ist eine Illustration eines grep innerhalb des Ruby-Codes: es wird nach Repos und Benutzern gesucht, aber auch nach dem, was ich in erster Linie suchen wollte: dem Code!
Erste Antwort und Illustration der früheren Ausgabe (Sept. 2012 => März 2012)
Sie können die erweiterte Suche GitHub-Formular :
- Wählen Sie
Code
, Repositories
o Users
aus der Dropdown-Liste und
- verwenden Sie die entsprechende Präfixe, die für diesen Suchtyp aufgeführt sind .
Verwenden Sie zum Beispiel die repo:username/repo-name
Richtlinie, um die Suche auf eine Code Repository.
Die ursprüngliche " Advanced Search
"Seite enthält den Abschnitt:
Código Suche:
Die Codesuche durchsucht den gesamten öffentlich auf GitHub gehosteten Code. Sie können auch filtern nach :
- die Sprache
language:
- den Namen des Repositorys (einschließlich des Benutzernamens)
repo:
- den Dateipfad
path:
Wenn Sie also die Option " Code
"Suchselektor, dann funktioniert Ihre Abfrage, die nach einem Text innerhalb eines Repos sucht:
Was ist unglaublich nicht hilfreich von GitHub ist das:
- wenn Sie vergessen haben, den richtigen Suchselektor zu verwenden (hier "
Code
"), erhalten Sie eine Fehlermeldung:
" Invalid search query. Try quoting it.
"
-
die Fehlermeldung hilft Ihnen überhaupt nicht weiter.
Keine noch so große Menge von " quoting it
" hilft Ihnen, diesen Fehler zu vermeiden.
-
Sobald Sie diese Fehlermeldung erhalten, werden Sie nicht mehr an die richtige Zuordnung der Suchbegriffe erinnert. Selektoren (" Repositories
", " Users
" oder " Language
") und die (rechte) Suche filtert (hier " repo:
").
Bei jedem weiteren Versuch werden diese Verknüpfungen (Selektoren-Filter) nicht mehr angezeigt. Nur die Fehlermeldung, die Sie oben sehen...
Die einzige Möglichkeit, diese Arrays zurückzubekommen, besteht darin, auf die Schaltfläche " Advance Search
Symbol ":
-
die " Everything
"Suchselektor, der standardmäßig verwendet wird, ist eigentlich der falsch einer für todos der Suchfilter! Außer " language:
"...
(Man könnte sich vorstellen/vermuteten, dass " Everything
" würde Ihnen helfen, einen Suchselektor auszuwählen, der mit dem Suchfilter funktioniert " repo:
", aber nein. Das wäre zu einfach)
-
können Sie den gewünschten Suchselektor nicht über das Feld " Advance Search
" Feld allein!
(aber Sie können für " language:
", auch wenn " Search Language
" ist ein weiteres Kombinationsfeld direkt unter dem " Search for
"Typ" ein...)
Die Erfahrung des Nutzers sieht also in der Regel folgendermaßen aus:
- klicken Sie auf "
Advanced Search
", sehen Sie sich die Abschnitte mit den Filtern an, und entdecken Sie einen, den Sie verwenden möchten: " repo:
"
- machen Sie eine erste erweiterte Suche "
repo:jruby/jruby stat
", aber mit dem Standard-Suchselektor " Everything
"
\=> FAIL
! (und die Arrays, die die Assoziation "Selectors-Filters" anzeigen, sind gegangen )
- Wenn Sie das "Suchen nach"-Symbol sehen, wählen Sie die premier Auswahl "
Repositories
"("Dah! Ich möchte innerhalb der Repositories suchen...")
\=> FAIL
!
- entmutigt, wählen Sie die nächste Auswahl an Selektoren aus (hier: "
Users
"), ohne den besagten Selektor überhaupt anzusehen, nur um es noch einmal zu versuchen...
\=> FAIL
!
- "Scheiß drauf, die GitHub-Suche ist gebrochen ! Ich haue ab!"
...
(Die erweiterte Suche von GitHub ist eigentlich nicht kaputt, nur die Benutzeroberfläche ist es...)
Also, um zusammenzufassen, wenn Sie "grep für etwas innerhalb eines Github-Projekts Code", wie die OP wollen Ben Humphreys vergessen Sie nicht, die Option " Code
" Suchselektor...