此内容根据文章生成,并经过人工审核,仅用于文章内容的解释与总结
投诉1 前言
在互联网上寻找某件事情需要有正确的搜索技巧,在 GitHub 也不例外,通过一些搜索的语法和策略,可以帮助更精准、快速地定位到有价值的项目和代码片段。
在使用搜索前需要了解一个存储库大概包含哪些内容,可以在存储库详情页面查看,具体可参考下图。
2 基础搜索语法
2.1 关键词搜索
最直接的方式,只需在搜索框中输入关键词,如:data visualization
。
2.2 引号精确匹配
如果想要精确搜索某个短语,可以将其用引号括起来,如:"data visualization"
。
3 高级搜索语法
3.1 按基本信息
语法 | 描述 |
---|
xxx in:name | 匹配名称中带有 xxx 的存储库 |
xxx in:description | 匹配说明中带有 xxx 的存储库 |
xxx in:topics | 匹配标签中带有 xxx 的存储库 |
xxx in:readme | 匹配自述文件中带有 xxx 的存储库 |
3.2 按星数、分支数
语法 | 描述 |
---|
stars:m…n | 匹配 m 到 n 个星数的存储库 |
stars:>n | 匹配大于 n 个星数的存储库
> 为判断,还可替换为>= 、< 、<= |
forks:m…n | 匹配 m 到 n 个分支数的存储库 |
forks:<=n | 匹配小于等于 n 个分支数的存储库
<= 为判断,还可替换为> 、>= 、< |
- 示例1:匹配小于等于 656 个星数的存储库(以 hexo 为例)
- 示例2:匹配大于 3k 分支数的存储库(以 hexo 为例)
3.3 按语言
语法 | 描述 |
---|
language:LANGUAGE | 匹配编程语言为 LANGUAGE 的存储库 |
- 示例:匹配语言为
TypeScript
的存储库(以 hexo 为例)
1
| hexo language:TypeScript
|
3.4 按创建时间、更新时间
语法 | 描述 |
---|
created:<YYYY-MM-DD | 匹配 YYYY 年 MM 月 DD 日之前创建的存储库 |
pushed:>YYYY-MM-DD | 匹配 YYYY 年 MM 月 DD 日之后更新的存储库 |
- 示例:匹配 2024 年 2 月之后更新的存储库(以 hexo 为例)
1
| hexo pushed:>=2024-03-01
|
3.5 按用户、组织
语法 | 描述 |
---|
user:USERNAME | 匹配用户为 USERNAME 的存储库 |
org:ORGNAME | 匹配组织为 ORGNAME 的存储库 |
- 示例:匹配用户为 hexojs 的存储库(以 hexo 为例)
3.6 按许可证
语法 | 描述 |
---|
license:LICENSE | 匹配许可证为 LICENSE 的存储库 常用许可关键词有:MIT 、Apache-2.0 、GPL 等 |
- 示例:匹配许可证为 Apache-2.0 的存储库(以 hexo 为例)
4 组合搜索技巧
结合前面的基础、高级搜索语法,可以实现更复杂、更精确的搜索。
- 示例1:搜索 2024 年之后更新、星数大于 1k 的 hexo 存储库
1
| hexo pushed:>=2024-01-01 stars:>1000
|
- 示例2:搜索 MIT 许可证、组织为 GitHub 、语言使用 JavaScript 的所有存储库
1
| license:MIT org:github language:JavaScript
|
5 利用高级搜索界面
GitHub 提供了一个高级搜索界面,通过它可以更直观地设置各种搜索条件,包括高级选项、存储库选项、代码选项、问题选项、用户选项等。
GitHub 高级搜索
6 写在最后
熟练掌握 GitHub 的搜索语法和技巧,能够大大提高在开源世界中的探索效率,更快地找到所需的代码资源,加速开发进程。在 GitHub 中诸如此类的效率方法还有很多,如果感兴趣可以查阅官方文档学习。