プロジェクトを開発する時、よくGithubで自弁が作りたいものを検索します。どうして自弁が検索したものを見つかるのは検索する文法をご説明します。
1.ある値より大きいまたは小さい値のクエリ
>、>=、<、<= などを使って、他の値に対する値の大なり、大なりイコール、小なり、または、小なりイコールでの検索を行えます
-
n android stars:>1000 1000 を超える Star のある、「android」という単語があるリポジトリにマッチします。(検索する時よく使う)
-
=n android topics:>=5 トピックが5つ以上ある、「android」という単語のあるリポジトリにマッチします。
- <n android size:<10000 10KBより小さいファイルで、「android」という単語があるコードにマッチします。
- <=n android stars:<=50 50以下の Star があり、「cats」という単語のあるリポジトリにマッチします。
一定範囲にある値のクエリ
- n..n android stars:10..50 は、Star が 10 から 50 までの間の数の、「android」という単語のあるリポジトリにマッチします。(普段は使わない)
- 一定の検索結果の除外
NOT 構文を使うことで、一定の単語を含む検索結果を除外できます。 NOT 演算子は、文字列型キーワードに限って使うことができます。 数や日付では機能しません。
- NOT Android NOT javaは、「java」という単語がなく、「Android」という単語のあるリポジトリにマッチします。
検索結果を絞り込む他の方法としては、一定のサブセットを除外することです。 - のプリフィックスを修飾子に付けることで、その修飾子にマッチする全ての結果を除外できます。
- -QUALIFIER Android stars:>10 -language:java は、Javaで書かれていない、Star が 10 を上回る、「Android」という単語のあるリポジトリにマッチします。
空白のあるクエリに引用符を使う
- 検索クエリに空白がある場合は引用符で囲む必要があります。 例:
Android NOT "hello world" は、「hello world」という単語がなく、「Android」という単語のあるリポジトリにマッチします。
- 高級検索
リポジトリの名、説明文、ファイルの内容に検索
in修飾子を通じてリポジトリ名、リポジトリの説明、readmeファイルの内容、またはこれらの任意の組合せに検索できる。
- in:name Android in:name 「Android」というnameのあるリポジトリにマッチします。
- in:description Android in:description 「Android」というdescriptionのあるリポジトリにマッチします。
- in:readme Android in:readme 「Android」というreadmeのあるリポジトリにマッチします。
- repo:owner/name repo:zhanghangcode/MigrationHelper zhanghangcodeというownerとMigrationHelperというnameのあるリポジトリにマッチします。
- in:name,description,readme Android in:name,description,readme 「Android」というname,description,readmeのあるリポジトリにマッチします。
4. 総合検索
例えば、
星が4000以上
言語はKotlin
Androidを含めているreadmeファイルとプロジェクトのdescription
検索文法:
in:description,readme Android language:kotlin Android stars:>4000
いろいろな条件がついてるサイト
https://github.com/search/advanced?q=in%3Adescription+python+language%3Apython++python+stars%3A%3E4000%2C