Est-il un moyen de grep pour quelque chose à l'intérieur d'un Github du projet de code?
J'ai pu en tirer de la source et de grep localement, mais je me demandais si il est possible via l'interface web ou une 3e partie de l'alternative.
Des idées?
Est-il un moyen de grep pour quelque chose à l'intérieur d'un Github du projet de code?
J'ai pu en tirer de la source et de grep localement, mais je me demandais si il est possible via l'interface web ou une 3e partie de l'alternative.
Des idées?
Mise à jour janvier 2013: une nouvelle marque de recherche est arrivé!, basé sur elasticsearch.org:
Une recherche de stat dans le ruby repo sera exprimé en stat repo:ruby/ruby
, et maintenant juste travaillerTM.
(les pensions de nom n'est pas sensible à la casse: test repo:wordpress/wordpress
renvoie le même que test repo:Wordpress/Wordpress
)
Donnera:
Et vous avez de nombreux autres exemples de recherche, basée sur les suiveurs, ou sur les fourches, ou...
Mise à jour en juillet 2012 (vieux jours de recherche Lucene et les pauvres code d'indexation, combiné avec un GUI, conservé ici pour archive):
La recherche (basé sur SolrQuerySyntax) est maintenant plus permissif et le redoutable "Invalid search query. Try quoting it.
" est allé lors de l'utilisation de la valeur par défaut de recherche sélecteur de "Tout":)
(Je suppose que nous pouvons tous que Tim Pease, qui avait dans un de ses objectifs est de"hacking sur l'amélioration de la recherche d'expériences pour tous GitHub propriétés", et j'ai fait mention de ce Débordement de Pile question à l'époque ;) )
Voici une illustration d'un grep dans le code ruby: il regarde pour le repos et les utilisateurs, mais aussi pour ce que je voulais de recherche en premier lieu: le code!
Début de réponse et l'illustration de la première de ces questions (Sept. 2012 => Mars 2012)
Vous pouvez utiliser la recherche avancée GitHub forme:
Code
, Repositories
ou Users
à partir de la liste déroulante et Par exemple, l'Utilisation de l' repo:username/repo-name
directive pour limiter la recherche à un code de référentiel.
La première "Advanced Search
" page comprend la section:
Code De Recherche:
La recherche de Code va chercher dans tout le code publiquement hébergé sur GitHub. Vous pouvez également filtrer par :
- la langue
language:
- le nom du dépôt (y compris le nom d'utilisateur)
repo:
- le chemin du fichier
path:
Donc, si vous sélectionnez l'option "Code
" recherche du sélecteur, puis votre requête grepping pour un texte dans un repo:
Ce qui est incroyablement inutile de GitHub, c'est que:
Code
"), vous obtiendrez un message d'erreur:Invalid search query. Try quoting it.
" le message d'erreur ne vous aide pas du tout.
Aucune quantité de "quoting it
" vous fera sortir de cette erreur.
une fois que vous obtenez ce message d'erreur, vous n'obtenez pas les sections de vous rappeler le droit d'association entre la recherche sélecteurs ("Repositories
", "Users
" ou "Language
") et de la (bonne) recherche des filtres (ici "repo:
").
Toute autre tentative, vous ne pas afficher ces associations (sélecteurs-filtres). Seul le message d'erreur que vous voyez ci-dessus...
La seule façon de récupérer ces tableaux est en cliquant sur le "Advance Search
" icône:
le "Everything
" recherche sélecteur, qui est la valeur par défaut, est en fait le mal un pour tous les filtres de recherche! À l'exception de "language:
"...
(Vous pouvez l'imaginer/supposons que "Everything
" serait de vous aider à choisir ce que recherche le sélecteur fonctionne réellement avec le filtre de recherche "repo:
", mais nope. Ce serait trop facile)
vous ne pouvez pas spécifier la recherche sélecteur vous voulez par le "Advance Search
" seul domaine!
(mais vous pouvez pour "language:
", même si "Search Language
" est un autre de zone de liste déroulante juste en dessous de la "Search for
" 'type'...)
Ainsi, l'expérience de l'utilisateur est généralement comme suit:
Advanced Search
", coup d'œil sur les articles de filtres, et de l'avis de celui que vous souhaitez utiliser: "repo:
"repo:jruby/jruby stat
", mais avec la Recherche par défaut sélecteur "Everything
"FAIL
! (et les tableaux d'affichage de l'association "les Sélecteurs-Filtres" est allé)Repositories
" ("Dah! Je recherche dans les dépôts...")FAIL
!Users
"), sans même le regarder, a déclaré sélecteur, juste pour essayer encore une fois...FAIL
!Donc, pour résumer, si vous voulez "grep pour quelque chose à l'intérieur d'un projet Github du code", comme l'OP Ben Humphreys, n'oubliez pas de sélectionner l'option "Code
" recherche sélecteur de...
Mise à JOUR
Le bookmarklet hack ci-dessous est cassé à cause d'un XHR les problèmes et les changements de l'API.
Heureusement, Github a maintenant Un Tout Nouveau Code de la Recherche" qui fait le travail superbement.
Caisse vaudou: Github le code de la recherche script.
Suivez les instructions, ou si vous détestez les ballonnements votre navigateur avec les scripts et les extensions, utilisez mon bookmarkified ensemble de script:
javascript:(function(){var s='https://github.com/skratchdot/github-code-search.user.js/raw/master/github-code-search.user.js',t='text/javascript',d=document,n=navigator,e;(e=d.createElement('script')).src=s;e.type=t;d.getElementsByTagName('head')[0].appendChild(e)})();doIt('');void('');
Enregistrer la source ci-dessus que l'URL d'un nouveau signet. Accédez à n'importe quel Dépôt Github, cliquez sur le signet, et bam: en page, ajaxified code de recherche.
Mise en garde Github doit indexer les pensions de titres avant que vous pouvez rechercher.
Abracadabra...
Voici un exemple de recherche de l'ECMAScript 5.1 spécification référentiel:
Alors que @VonC réponse qui fonctionne pour certains référentiels, malheureusement pour beaucoup de dépôts, vous ne pouvez pas droit maintenant. Github est tout simplement pas d'indexation (comme le faisait remarquer à l'origine par @emddudley). Ils n'ont pas indiqué nulle part sur leur site web, mais ils pourront vous dire si vous demandez à l'appui:
De: Tim Pease
Nous avons cessé d'ajouter nouvellement poussé code dans notre codesearch index. Le volume de code a fait le tour de notre courant de l'index de recherche, et nous travaillons sur le passage à une plus évolutive de l'architecture de la recherche. Je suis désolé pour le désagrément. Nous n'avons pas d'estimation pour ce nouvel index de recherche est en place et en cours d'exécution, mais quand il est prêt un article de blog sera publié (https://github.com/blog).
Fâcheusement il n'y a aucun moyen de savoir qui référentiels ne sont pas indexées autres que le manque de résultats (ce qui pourrait également être d'une mauvaise requête).
Il y a également aucun moyen de suivre ce problème autre que d'attendre pour eux de blog (ou regarder ici).
De: Tim Pease
Je crains que notre bug tracker est interne, mais nous pouvons vous informer dès que la nouvelle de l'index de recherche est en place et en cours d'exécution.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.