Skip to content

Github 备忘清单 ​

Github.com 上 80 个键盘快捷键和一些搜索技巧的备忘清单

键盘快捷键 ​

站点范围的快捷方式 ​

快捷键说明
S聚焦搜索栏
G N转到您的通知
H打开并关注用户、问题或拉取请求悬浮卡
Esc当专注于上面时,关闭 hovercard

资料库 ​

快捷键说明
G C转到 Code 选项卡
G I转到 Issues 选项卡
G P转到拉取请求选项卡
G B转到 Projects 选项卡
G W转到 Wiki 选项卡

源码浏览 ​

快捷键说明
T激活文件查找器
L跳转到代码中的一行
W切换到新的分支或标签
Y将 URL 扩展为其规范形式
I显示或隐藏对差异的评论
B打开责备视图

源代码编辑 ​

快捷键说明
Ctrl F开始在文件编辑器中搜索
Ctrl G找下一个
Ctrl Shift G查找上一个
Ctrl Shift F代替
Ctrl Shift R全部替换
Alt G跳转到行
Ctrl Z撤消
Ctrl Y重做

注释 ​

快捷键说明
Ctrl B为粗体文本插入 Markdown 格式
Ctrl I插入斜体文本的 Markdown 格式
Ctrl K插入 Markdown 格式以创建链接
Ctrl Shift P在编写和预览评论选项卡之间切换
Ctrl Enter提交评论
Ctrl .打开已保存的回复菜单,然后使用已保存的回复自动填充评论字段
Ctrl G插入一个建议
R在回复中引用所选文字

项目板 ​

快捷键说明
Enter/Space开始移动焦点列
Esc取消正在进行的移动
Enter完成正在进行的移动
Left/H向左移动列
Ctrl Left/H将列移动到最左边的位置
Right/L向右移动列
Ctrl Right/L将列移动到最右边的位置
Enter/Space开始移动聚焦卡
Esc取消正在进行的移动
Enter完成正在进行的移动
Down/J向下移动卡片
Ctrl Down/J将卡片移动到列的底部
Up/K向上移动卡片
Ctrl Up/K将卡片移动到列的顶部
Left/H将卡片移动到左侧列的底部
Shift Left/H将卡片移动到左侧列的顶部
Ctrl Left/H将卡片移动到最左边一列的底部
Ctrl Shift Left/H将卡片移至最左侧列的顶部
Right将卡片移动到右侧列的底部
Shift Right/L将卡片移动到右侧列的顶部
Ctrl Right/L将卡片移动到最右侧列的底部
Ctrl Shift Right/L将卡片移至最右侧列的顶部

问题和拉取请求列表 ​

快捷键说明
C创建问题
Ctrl /将光标聚焦在问题或拉取请求搜索栏上
U按作者过滤
L按标签过滤或编辑标签
M按里程碑过滤或编辑里程碑
A按受让人过滤或编辑受让人
O打开问题

问题和拉取请求 ​

快捷键说明
Q请求审稿人
M设定一个里程碑
L应用标签
A设置受让人

通知 ​

快捷键说明
E/L/Y标记为已读
Shift M静音线程

拉取请求的变化 ​

快捷键说明
C打开拉取请求中的提交列表
T打开拉取请求中已更改文件的列表
J在列表中向下移动选择
K在列表中向上移动选择
Ctrl Shift Enter在拉取请求差异上添加单个评论
Alt (click)在拉取请求中折叠和展开所有过时的审阅评论之间切换

网络图 ​

快捷键说明
Left/H向左滚动
Right/L向右滚动
Up/K向上滑动
Down/J向下滚动
Shift Left/H一直向左滚动
Shift Right/L一直向右滚动
Shift Up/K一直向上滚动
Shift Down/J一直向下滚动

搜索技巧 ​

范围搜索 ​

:----
org:rails language:ruby指定组织 rails 和编程语言 ruby
repo:torvalds/linux io_uring指定仓库 torvalds/linux 搜索 io_uring
owner:tpope path:*.vim指定拥有者 tpope 和文件后缀为 *.vim
created:"> 2022-10-22" language:C#创建于 2022-10-22 以后,语言为 C# 的条件

文件路径 ​

:----
path:__init__.py文件为 __init__.py 里面的内容搜索
path:/.*shrc$/文件路径包含 .*shrc 结尾的文件中搜索内容
path:/src/*.jssrc 目录中的 .js 后缀的文件中搜索内容
path:/(^|\/)README\.md$/使用正则,仅匹配特定文件名(而不是路径的一部分)

完全符合 ​

:----
out of memory文本匹配 out of memory

布尔运算符 ​

:----
io_uring (language:c OR language:cpp)语言为 c 或者 cpp 的文件中搜索 io_uring
org:kubernetes NOT repo:kubernetes/api组织为 kubernetes 排除里面的 api 仓库进行搜索

基于仓库的条件 ​

:----
stars:100..8000 stars:>10000星星为 100 ~ 8000 或 10000 以上的
forks:50..100 forks:200 forks:<5fork 为 50 ~ 100 或者 200 或者小于 5
size:35大小为 35kb
pushed:<2022-11-23推送代码时间 2022-11-23 之前
fork:true, fork:only
license:mit基于协议 mit 条件

基于 issue 的条件 ​

:----
state:open, state:closed关闭 / 打开 的 issue
reason:completed"not planned", reopened, completed
label:bug标签为 bug 的条件
author:jaywcjlove作者 jaywcjlove 打开
mentions:jaywcjlove提及 jaywcjlove 用户
assignee:jaywcjlove分配给 jaywcjlove 用户
updated:<2022-11-23更新日期之前

基于用户的条件 ​

:----
fullname:jaywcjlove全名 jaywcjlove
location:China位置 China
followers:20..50 followers:>200 followers:<2追随者
repos:0 repos:5仓库数量

Symbol 限定符 ​

搜索 go 语言中的 WithContext 符号

language:go symbol:WithContext

查询将查找在 Rust 中实现的 String 类型转换:

language:rust symbol:/^String::to_.*/

使用布尔运算 ​

查询将匹配包含 sparse 或 index 的文档

js
sparse OR index

排除 __testing__ 目录中的文件,您可以搜索:

js
"fatal error" NOT path:__testing__

您可以使用括号来表达更复杂的布尔表达式

js
(language:ruby OR language:python) AND NOT path:"/tests/"

使用运算符 AND、OR 和 NOT 来组合搜索词

is 限定符 ​

  • archived: 限制搜索已存档的版本库
  • fork: 限制搜索已分叉的版本库
  • vendored: 限制搜索被检测为 vendored 的内容
  • generated: 限制搜索检测为已生成的内容

示例

:----
path:/^MIT.txt$/ is:archived已归档存储库,中包含名为 MIT.txt 的文件
log4j NOT is:archived限定符 is: 可以与 NOT 运算符反转
log4j NOT is:fork从结果中排除分叉

另见 ​