Githubプロジェクトのコード内で何かをgrepする方法はありますか?
ソースをプルしてローカルでgrepすることはできましたが、それがWebインターフェイスまたはサードパーティの代替手段で可能かどうか疑問に思っていました。
アイデア?
Githubプロジェクトのコード内で何かをgrepする方法はありますか?
ソースをプルしてローカルでgrepすることはできましたが、それがWebインターフェイスまたはサードパーティの代替手段で可能かどうか疑問に思っていました。
アイデア?
回答:
2013年1月の更新:新しい検索が到着しました!、elasticsearch.orgに基づく:
rubyリポジトリ内でのstatの検索はと表現されstat repo:ruby/ruby
、TMで動作するようになります。
(リポジトリ名は大文字と小文字が区別されません:test repo:wordpress/wordpress
と同じ結果を返しますtest repo:Wordpress/Wordpress
)
あげる:
そして、あなたはフォロワー、フォーク、または... に基づいた検索の他の多くの例を持っています
2012年7月の更新(Luceneの検索と貧弱なコードインデックス作成の昔、壊れたGUIと組み合わせて、アーカイブのためにここに保持):
検索(SolrQuerySyntaxに基づく)はより寛容になりInvalid search query. Try quoting it.
、デフォルトの検索セレクター「Everything」を使用すると恐ろしい「」がなくなりました:)
(私は彼の目的の1つである「すべてのGitHubプロパティの改善された検索エクスペリエンスへのハッキング」を持っていたTim Peaseよりもすべてができると思います、そして私はこの時にこのスタックオーバーフローの質問に言及しました;))
これはrubyコード内のgrepの図です。これはリポジトリとユーザーを検索しますが、最初に検索したいもの、つまりコードも検索します。
最初の回答と前号の説明(2012年9月=> 2012年3月)
高度な検索GitHubフォームを使用できます。
Code
するRepositories
かUsers
、ドロップダウンからたとえば、repo:username/repo-name
ディレクティブを使用して、検索をコードリポジトリに限定します。
最初の「Advanced Search
」ページには、次のセクションが含まれています。
コード検索:
コード検索は、GitHubで公開されているすべてのコードを調べます。次の条件でフィルタリングすることもできます。
- 言語
language:
- リポジトリ名(ユーザー名を含む)
repo:
- ファイルパス
path:
したがって、「Code
」検索セレクターを選択すると、リポジトリ内のテキストに対するクエリgreppingが機能します。
何が信じられないほど 役に立たない GitHubのからすると、その次のとおりです。
Code
")を配置するのを忘れると、エラーメッセージInvalid search query. Try quoting it.
"が 表示されますエラーメッセージはまったく役に立ちません。
「quoting it
」の数を増やしても、このエラーは解消されます。
エラーメッセージが表示されると、検索セレクター( " Repositories
"、 " Users
"、 " Language
")と(右)検索フィルター(ここでは " repo:
")の間の正しい関連付けを通知するセクションが表示されなくなります。
それ以上の試みを行っても、それらの関連付け(selectors-filters)は表示されません。上記のエラーメッセージのみ...
これらの配列を取得する唯一の方法は、「Advance Search
」アイコンをクリックすることです。
Everything
デフォルトの " "検索セレクターは、実際にはすべての検索フィルターに対して間違ったセレクターです。「」を除いて...
(「」は検索フィルター「」で実際に機能する検索セレクターを選択するのに役立ちますが、それは簡単ではありません。)language:
Everything
repo:
「Advance Search
」フィールドだけで必要な検索セレクターを指定することはできません。
(language:
ただし、「Search Language
」は「Search for
」「タイプ」のすぐ下にある別のコンボボックスですが、「」で使用できます...)
したがって、ユーザーのエクスペリエンスは通常次のようになります。
Advanced Search
」をクリックして、フィルターのこれらのセクションを一目見て、使用したいものに気づきます:「repo:
」repo:jruby/jruby stat
"を行いますが、デフォルトの検索セレクタ " Everything
" FAIL
!(そして "Selectors-Filters"の関連付けを表示する配列はなくなりました)Repositories
」を選択してください(「Dah!リポジトリ内を検索したい...」)FAIL
!Users
")を選択します。セレクターを見ることさえせずに、もう一度試してみるだけです... FAIL
!つまり、「Githubプロジェクトのコード内で何かをgrepする」場合、OP Ben Humphreysとして、「Code
」検索セレクターを選択することを忘れないでください。
repo:"jruby/jruby" stat
repo:"jruby" stat
jruby: stat
どれもうまくいかなかった
最近のプライベートリポジトリには、そのリポジトリを検索するための検索フィールドがあります。
不可解なことに、この機能はパブリックリポジトリでは利用できないようです。
更新
以下のブックマークレットハックは、XHRの問題とAPIの変更により壊れています。
ありがたいことに、Githubには「A Whole New Code Search」があり、この機能が優れています。
このブードゥー教をチェックアウト:GitHubのコード検索userscript。
そこに記載されている指示に従うか、スクリプトや拡張機能でブラウザを膨らませたくない場合は、ブックマークしたユーザースクリプトのバンドルを使用してください。
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('');
上記のソースを新しいブックマークのURLとして保存します。Githubリポジトリを参照し、ブックマークをクリックして、bam:ページはめ込み、ajaxifiedコードで検索します。
警告 Githubは、レポを検索する前にインデックスを作成する必要があります。
アブラカダブラ...
これは、注釈付きECMAScript 5.1仕様リポジトリからのサンプル検索です。
@VonCの回答は一部のリポジトリで機能しますが、残念ながら多くのリポジトリでは現在使用できません。Githubは単にそれらをインデックス化していません(@emddudleyによって最初にコメントされたように)。彼らは彼らのウェブサイトのどこにもこれを述べていませんが、あなたがサポートを求めればあなたに教えてくれます:
From:Tim Pease
新しくプッシュされたコードをcodesearchインデックスに追加するのをやめました。コードの量が現在の検索インデックスを上回り、よりスケーラブルな検索アーキテクチャへの移行に取り組んでいます。ご迷惑をおかけして申し訳ありません。この新しい検索インデックスがいつ稼働するかについての見積もりはありませんが、準備ができたらブログ投稿が公開されます(https://github.com/blog)。
不愉快なことに、結果の欠如(これも悪いクエリからである可能性があります)以外に、どのリポジトリーが索引付けされていないかを知る方法はありません。
また、彼らがブログを書くのを待つ(またはここでSOを見る)以外に、この問題を追跡する方法はありません。
From:Tim Pease
私たちの課題トラッカーは内部にあると思いますが、新しい検索インデックスが稼働し始めたらすぐに通知できます。
Googleではプロジェクト内を検索できますが、コード:(
私は無料でGitHubのリポジトリのソースコードの内部を検索Sourcegraphクローム拡張 ...しかし、私ダウンロードクロームまず、私のような、他のブラウザにはかかわらず、それをサポートして知っていた-と多分ちょうどのみ- Firefoxの。
私はざっと目を通したのSourceForgeのChrome拡張ドキュメント、その後も私はいくつかの読むことによって、GitHubの提供する検索エンジン自体にディレクトリ名を検索するために必要なものだけを見てドキュメントを検索するのGithubのコードベースを