ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。
記事のバージョン: GitHub.com

コードの検索

GitHub 上のコードを検索することができます。そして、これらのコードを検索する修飾子を組み合わせることで、検索結果を絞ることができます。

GitHub 全体にわたってグローバルにコードを検索できます。あるいは、特定のリポジトリや Organization のみのコードの検索もできます。 パブリックリポジトリのすべてにわたってコードを検索するには、GitHub にサインインしていなければなりません。 詳細は「GitHub 上での検索について」を参照してください。

これらのコード検索の修飾子を使わなければ、コードを検索できません。 リポジトリ、ユーザまたはコミットの特定の修飾子での検索は、コードを検索する場合、うまくいきません。

参考:

  • 検索結果を改良する検索修飾子を追加できる検索構文のリストについては、「検索構文を理解する」を参照してください。
  • 複数単語の検索用語は引用符で囲みます。 たとえば "In progress" というラベルを持つ Issue を検索したい場合は、label:"in progress" とします。 検索では、大文字と小文字は区別されません。

ここには以下の内容があります:

コードの検索は複雑なため、検索の実行には一定の制限があります。

ファイルの内容またはファイルパスで検索

in 修飾子によって、ソースコードファイル、ファイルパスまたはその両方の内容に検索を限定することができます。 この修飾子を省略した場合、ファイルの内容だけが検索されます。

修飾子 サンプル
in:file octocat in:file は、ファイルの内容に「octocat」が出現するコードにマッチします。
in:path octocat in:path は、ファイルパスに「octocat」が含まれているコードにマッチします。
octocat in:file,path は、ファイルの内容またはファイルパスに「octocat」が含まれているコードにマッチします。

ユーザまたは Organization のリポジトリ内の検索

特定のユーザまたは Organization のすべてのリポジトリのコードを検索するには、user 修飾子または org 修飾子を使います。 特定のリポジトリのコードを検索するには、repo 修飾子を使います。

修飾子 サンプル
user:<em>USERNAME</em> user:defunkt extension:rb は、末尾が .rb の @defunkt からのコードにマッチします。
org:<em>ORGNAME</em> org:github extension:js は、末尾が .js の GitHub からのコードにマッチします。
repo:<em>USERNAME/REPOSITORY</em> repo:mozilla/shumway extension:as は、末尾が .as の @mozilla の shumway project からのコードにマッチします。

ファイルの場所での検索

リポジトリの特定の場所に表示されているソースコードを探すには、path 修飾子を使います。 リポジトリの root レベルにあるファイルを検索するには、path:/ を使います。 または、ディレクトリやそのサブディレクトリ内に存在しているファイルを検索するには、ディレクトリ名もしくはディレクトリへのパスを明示してください。

修飾子 サンプル
path:/ octocat filename:readme path:/ は、リポジトリの root レベルに存在する 「octocat」という単語がある readme ファイルにマッチします。
path:<em>DIRECTORY</em> form path:cgi-bin language:perl は、cgi-bin ディレクトリやそのサブディレクトリにある「form」という単語がある Perl のファイルにマッチします。
path:<em>PATH/TO/DIRECTORY</em> console path:app/public language:javascript は、app/public ディレクトリやそのサブディレクトリ (たとえばapp/public/js/form-validators に属すものも) にある「console」という単語がある JavaScript のファイルにマッチします。

言語で検索

コードが書かれた言語で検索することができます。

修飾子 サンプル
language:<em>LANGUAGE</em> element language:xml size:100 は、XML 形式でちょうど 100 バイトであり「element」という単語があるコードにマッチします。
display language:scss は、SCSS 形式の「display」という単語があるコードにマッチします。
org:mozilla language:markdown は、Markdown 形式の @mozilla のすべてのリポジトリからのコードにマッチします。

ファイルサイズで検索

コードが存在するファイルのサイズによってソースコードを検索するには、size 修飾子を使います。 size 修飾子は、ファイルのバイトサイズによって検索結果を仕分けするために、不等号や範囲の修飾子を使います。

修飾子 サンプル
size:<em>n</em> function size:>10000 language:python は、10 KB より大きいファイルにある Python で記述された「function」という単語があるコードにマッチします。

ファイル名で検索

filename 修飾子は、特定のファイル名を持つコードファイルにマッチします。 ファイルファインダーを使ってリポジトリにあるファイルを表示できます。 詳細は「GitHub でファイルを検索する」を参照してください。

修飾子 サンプル
filename:<em>FILENAME</em> filename:linguist は、「linguist」と名付けられたファイルにマッチします。
filename:.vimrc commands は、「commands」という単語がある .vimrc ファイルにマッチします。
filename:test_helper path:test language:ruby は、test ディレクトリ内の test_helper と名付けられた Ruby のファイルにマッチします。

ファイルの拡張子で検索

extension 修飾子は、特定のファイル拡張子のあるファイルにマッチします。

修飾子 サンプル
extension:<em>EXTENSION</em> form path:cgi-bin extension:pm は、.pm というファイル拡張子を伴う cgi-bin にある「form」という単語があるコードにマッチします。
icon size:>200000 extension:css は、「icon」という単語がある、末尾が .css の、200 KB より大きいファイルにマッチします。

参考リンク

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください