検索構文を理解する
GitHub Enterprise の検索では、特定の数字や単語にマッチするクエリを作成できます。
ある値より大きいまたは小さい値のクエリ
>
、>=
、<
、<=
などを使って、他の値に対する値の大なり、大なりイコール、小なり、または、小なりイコールでの検索を行えます。
クエリ | サンプル |
---|---|
>
n
|
cats stars:>1000 は、1000 を超える Star のある、「cats」という単語があるリポジトリにマッチします。 |
>=
n
|
cats topics:>=5 は、トピックが 5 つ以上ある、「cats」という単語のあるリポジトリにマッチします。 |
<
n
|
cats size:<10000 は、10 KB のファイルで、「cats」という単語があるコードにマッチします。 |
<=
n
|
cats stars:<=50 は、50 以下の Star があり、「cats」という単語のあるリポジトリにマッチします。 |
他の値に対する値の大なり、大なりイコール、小なり、または、小なりイコールでの検索は、range queries を使って実行することもできます。
クエリ | サンプル |
---|---|
n
..*
|
cats stars:10..*
は、stars:>=10 と同様に、10 以上の Star のある、「cats」という単語のあるリポジトリにマッチします。 |
*..
n
|
cats stars:*..10 は、stars:<=10 と同様に、Star が 10 以下で、「cats」という単語のあるリポジトリにマッチします。 |
一定範囲にある値のクエリ
<em>n</em>..<em>n</em>
という範囲構文を使って、範囲内の値を検索できます。最初の番号 n が最小値で、二番目が最大値です。
クエリ | サンプル |
---|---|
n
..
n
|
cats stars:10..50 は、Star が 10 から 50 までの間の数の、「cats」という単語のあるリポジトリにマッチします。 |
日付のクエリ
>
、>=
、<
、<=
や range queries を使って、他の日より前または後の日付や、一定の範囲内の日付を検索できます。 日付の形式は ISO8601 標準に従い、YYYY-MM-DD
(年-月-日) とする必要があります。
クエリ | サンプル |
---|---|
>
YYYY
-
MM
-
DD
|
cats created:>2016-04-29 は、2016 年 4 月 29 日より後に作成された、「cats」という単語のある Issue にマッチします。 |
>=
YYYY
-
MM
-
DD
|
cats created:>=2017-04-01 は、2017 年 4 月 1 日以降に作成された、「cats」という単語を含む Issue にマッチします。 |
<
YYYY
-
MM
-
DD
|
cats pushed:<2012-07-05 は、2012 年 7 月 5 日より前にプッシュされた、リポジトリに「cats」という単語のあるコードにマッチします。 |
<=
YYYY
-
MM
-
DD
|
cats created:<=2012-07-04 は、2012 年 7 月 4 日以前に作成された、「cats」という単語のある Issue にマッチします。 |
YYYY
-
MM
-
DD
..
YYYY
-
MM
-
DD
|
cats pushed:2016-04-30..2016-07-04 は、2016 年 4 月末から 2017 年 7 月 4 日の間にプッシュされた、「cats」という単語のあるリポジトリにマッチします。 |
YYYY
-
MM
-
DD
..*
|
cats created:2012-04-30..* は、「cats」という単語を含む、2012 年 4 月 30 日より後に作成された Issue にマッチします。 |
*..
YYYY
-
MM
-
DD
|
cats created:*..2012-04-30 は、「cats」という単語のある、2012 年 7 月 4 日より前に作成された Issue にマッチします。 |
日付の後に追加の時間情報 THH:MM:SS+00:00
を追加して、時間、分、秒で検索できるようにすることができます。これは T
の後に HH:MM:SS
(時-分-秒)、そして UTC のオフセット (+00:00
) を続けます。
クエリ | サンプル |
---|---|
YYYY
-
MM
-
DD
T
HH
:
MM
:
SS
+
00
:
00
|
cats created:2017-01-01T01:00:00+07:00..2017-03-01T15:30:15+07:00
2017 年 1 月 1 日午前 1 時(世界協定時+7時間 )と 2017 年 3 月 1 日午後 3 時(世界協定時 +7時間 )の間に作成された Issue にマッチします。 |
YYYY
-
MM
-
DD
T
HH
:
MM
:
SS
Z
|
cats created:2016-03-21T14:11:00Z..2016-04-07T20:45:00Z は、2016 年 3 月 21 日午後 2 時 11 分と 2016 年 4 月 7 日 8 時 45 分の間に作成された Issue にマッチします。 |
一定の検索結果の除外
NOT
構文を使うことで、一定の単語を含む検索結果を除外できます。 NOT
演算子は、文字列型キーワードに限って使うことができます。 数や日付では機能しません。
クエリ | サンプル |
---|---|
NOT |
hello NOT world は、「world」という単語がなく、「hello」という単語のあるリポジトリにマッチします。 |
検索結果を絞り込む他の方法としては、一定のサブセットを除外することです。 -
のプリフィックスを修飾子に付けることで、その修飾子にマッチする全ての結果を除外できます。
クエリ | サンプル |
---|---|
-
QUALIFIER
|
cats stars:>10 -language:javascript は、JavaScriptで書かれていない、Star が 10 を上回る、「cats」という単語のあるリポジトリにマッチします。 |
mentions:defunkt -org:github は、GitHub の Organization のリポジトリにはない、@defunkt をメンションする Issue にマッチします。 |
空白のあるクエリに引用符を使う
検索クエリに空白がある場合は引用府で囲む必要があります。 例:
- cats NOT "hello world" は、「hello world」という単語がなく、「cats」という単語のあるリポジトリにマッチします。
- build label:"bug fix" は、「bug fix」というラベルがある、「build」という単語のある Issue にマッチします。
スペースなど、いくつかの英数字以外の記号は、引用符で囲ったコード検索クエリから省かれるので、結果が予想外のものになる場合があります。