Githubの検索を使いこなせてない
常日頃お世話になっているGitHub。ただリポジトリを管理するだけじゃもったいない!と思い立って、Alfreadで手軽に検索できるように設定φ(..) が、コードが大量にありすぎていまいち欲しい情報にたどり着けない!
ということで、GitHubに大量にあるコードから自分が欲しい情報を手に入れるためGitHub Helpに書いてある検索のコマンドを抜粋してまとめてみた。
Searching code - User Documentation
前提として
GitHub Helpにある注意書き
- サインインしていないとすべてのパブリックなリポジトリを検索できません
- フォークしたリポジトリはフォーク元よりスターを獲得していないとインデックスされない
- もし検索したいときは
fork:true
orfork:only
- もし検索したいときは
- デフォルトのブランチのみがインデックスされる
- 384KB以下のファイルのみ検索可能
- ファイル数が500,000個未満のリポジトリのみ検索可能
- オプションの
filename
を伴わない限り、何かしらのキーワードがないと検索できない - 検索結果には最大二箇所しか1つのファイルから表示しないので、検索結果に表示された部分だけで判断しないでね
- 以下のワイルドカードはキーワードとしては使えません
. , : ; / \ ` ' " = * ! ? # $ & + ^ | ~ < > ( ) { } [ ]
コマンドたち
ファイルの場所から検索する
path:/
octocat filename:readme path:/
はルートに位置する"octocat"を含むreadmeのみがヒットする。
path:DIR
form path:cgi-bin language:perl
はcgi-binディレクトリ内のformを含むperlで書かれたファイルがヒットする。
path:PATH/TO/DIR
console path:app/public language:javascript
はapp/publicディレクトリ以下でconsoleを含むjavascriptファイルがヒットする。
言語で検索
language: LANGUAGE
display language:scss
はdisplayを含むSCSSで書かれたファイルがヒットする。
サイズで検索
size:n
function size:>10000 language:python
はfunctionを含むPythonで書かれた10KB以下のファイルがヒットする。
ファイル名で検索
filename:FILENAME
filename:views.py
はviews.pyのみがヒットする。
拡張子で検索
extension:EXTENSION
form path:cfi-bin extension:pm
はformを含むcgi-bin以下の.pmファイルがヒットする。
おわりに
このくらいの量なら使いこなせそう。これらを駆使して、参考のコードを探したり、良さげな変数名を見つけたりしてみよっと。リポジトリの検索はまたいろいろあるらしい。(スター数で検索とか)いつかリポジトリもじっくり見てみよう。それでは、よいGitHubライフを。