搜索 GitHub 时,您可以构建匹配特定数字和单词的查询。
注意:以下语法适用于非代码搜索。 有关代码搜索语法的详细信息,请参阅“了解 GitHub 代码搜索语法”。
可以使用?>
、>=
、<
?和?<=
?搜索大于、大于或等于、小于以及小于或等于另一个值的值。
查询 | 示例 |
---|---|
>n | cats stars:>1000?匹配有超过 1000 个星的具有“cats”一词的存储库。 |
>=n | cats topics:>=5?匹配有 5 个或以上主题的具有“cats”一词的存储库。 |
<n | cats size:<10000?匹配尺寸小于 10 KB 的文件中的具有“cats”一词的代码。 |
<=n | cats stars:<=50?匹配有 50 或更少个星的具有“cats”一词的存储库。 |
还可以使用范围查询搜索大于或等于或者小于或等于其他值的值。
查询 | 示例 |
---|---|
n..* | cats stars:10..*?等效于?stars:>=10 ?并匹配有 10 或更多个星的具有“cats”一词的存储库。 |
*..n | cats stars:*..10?等效于?stars:<=10 ?并匹配有 10 或更少个星的具有“cats”一词的存储库。 |
使用范围语法?n..n
?搜索范围内的值,其中第一个数字 N 是最低值,第二个是最高值。
查询 | 示例 |
---|---|
n..n | cats stars:10..50?匹配有 10 到 50 个星之间的具有“cats”一词的存储库。 |
可以使用?>
、>=
、<
、<=
?和范围查询搜索早于或晚于另一个日期或属于某个日期范围内的日期。 日期格式必须遵循?ISO8601?标准,即?YYYY-MM-DD
(年-月-日)。
查询 | 示例 |
---|---|
>YYYY-MM-DD | cats created:>2016-04-29?匹配具有 2016 年 4 月 29 日后创建的“cats”一词的问题。 |
>=YYYY-MM-DD | cats created:>=2017-04-01?匹配具有 2017 年 4 月 1 日或之后创建的“cats”一词的问题。 |
<YYYY-MM-DD | cats pushed:<2012-07-05?匹配具有在 2012 年 7 月 5 日之前推送到其中的“cats”一词的存储库。 |
<=YYYY-MM-DD | cats created:<=2012-07-04?匹配具有 2012 年 7 月 4 日或之前创建的“cats”一词的问题。 |
YYYY-MM-DD..YYYY-MM-DD | cats pushed:2016-04-30..2016-07-04?匹配具有在 2016 年 4 月末和 7 月之间推送到其中的“cats”一词的存储库。 |
YYYY-MM-DD..* | cats created:2012-04-30..*?匹配 2012 年 4 月 30 日之后创建的包含“cats”一词的问题。 |
*..YYYY-MM-DD | cats created:*..2012-07-04?匹配 2012 年 7 月 4 日之前创建的包含“cats”一词的问题。 |
也可以在日期后添加可选的时间信息?THH:MM:SS+00:00
,以按小时、分钟和秒进行搜索。 即?T
,随后是?HH:MM:SS
(时-分-秒)和 UTC 时差 (+00:00
)。
查询 | 示例 |
---|---|
YYYY-MM-DDTHH:MM:SS+00:00 | cats created:2017-01-01T01:00:00+07:00..2017-03-01T15:30:15+07:00?匹配 2017 年 1 月 1 日凌晨 1 点 (UTC 时差为?07:00 )和 2017 年 3 月 1 日下午 3 点 (UTC 时差为?07:00 )之间创建的问题。 |
YYYY-MM-DDTHH:MM:SSZ | cats created:2016-03-21T14:11:00Z..2016-04-07T20:45:00Z?匹配 2016 年 3 月 21 日下午 2:11 和 2016 年 4 月 7 日晚上 8:45 之间创建的问题。 |
可以通过排除一个或多个子集来缩小搜索结果范围。 若要排除该限定符匹配的所有结果,请在搜索限定符前添加一个前缀 (-
)。
查询 | 示例 |
---|---|
-QUALIFIER | cats stars:>10 -language:javascript?匹配有多于 10 个星但不是用 JavaScript 编写的具有“cats”一词的存储库。 |
-QUALIFIER | mentions:defunkt -org:github?匹配提及未在 GitHub 组织中的存储库的 @defunkt 的问题。 |
可以使用?NOT
?语法排除包含特定字词的结果。?NOT
?运算符只能用于字符串关键字。 不适用于数字或日期。
查询 | 示例 |
---|---|
NOT | hello NOT world?与包含字词“hello”但不包含字词“world”的存储库匹配。 |
如果搜索含有空格的查询,您需要用引号将其括起来。 例如:
如果搜索查询包含需要用户名的限定符(例如?user
、actor
?或?assignee
),可以使用任何 GitHub 用户名指定特定的人,或使用?@me
?指定当前用户。
查询 | 示例 |
---|---|
QUALIFIER:USERNAME | author:nat?匹配由 @nat 创建的提交 |
QUALIFIER:@me | is:issue assignee:@me?匹配分配给查看结果的人员的问题 |
只能使用带有限定符的?@me
?且不能用作搜索词,例如?@me main.workflow
。
原文连接: