使用Forge管理GitHub Issue
文章目录
前言
在Emacs中使用Forge管理GitHub Pull Request中,我聊到了在 Emacs
中使用 Forge
管理 GitHub Pull Request
,今天来讲一讲怎么管理 GitHub Issue
。
使用
使用之前需要配置 GitHub
相关信息,在Emacs中使用Forge管理GitHub Pull Request中有说过,不了解的可以前往查看,这里不再赘述。
Forge
是集成在 Magit
中的,所以可以在 Magit Status buffer
中使用 @
打开 Forge
菜单,这是使用 Forge
的入口。
把仓库加入 Forge
数据库
在使用之前需要让 Froge
识别到你的仓库,所以使用之前要通过 Forge
菜单把仓库管理起来。
使用 @
打开 menu
之后,按下 a
,默认会把当前仓库的远程 URL
加入 Forge
数据库。
拉取topics
先来解释一下 topics
,它包括了 Pull Request
和 Issue
。
在 Forge
中使用快快捷键 @ f f
来拉取所有的 Pull Request
和 Issue
。
拉取成功之后你就会在 Magit Status buffer
中看到 Pull Request
和 Issue
这两个标题。
查看 Issues 列表
有些时候我们只想看 Issue
这时候你可以使用 @ l i
打开一个新的 buffer
查看
在 buffer
中使用 o
可以在浏览器中打开这个 Issue
。
创建 Issue
讲完了怎么浏览 Issue
,我们就来了解怎么创建 Issue
。
我们回到 Magit Status buffer
按下 @ c i
创建一个 Issue
,你可以使用 markdown
的语法来编写。
|
|
使用 #数字
可以关联对应的 Issue
,编写完成后使用 C-c C-c
来完成创建, Forge
会自动把 Issue
推到 GitHub
。
编辑 Issue
我们创建好 Issue
之后发现有些地方写的不对,需要更改,这时候就需要按下回车键进入 Issue
详情页,然后才能进行更改。
编辑 Issue
主要编辑 Title
、 State
、 Label
、 Assignees
和 comment
,我们一一说明如何操作。

创建 comment
在 Issue
详情可以通过 C-c C-n
来创建 comment
,这里也是支持 markdown
的。使用 C-c C-c
完成编写,如果你不想要了,使用 C-c C-k
取消这次编写即可。
删除 Commnet
如果你发现有一条 comment
你不想要了可以使用 C-c C-k
来删除这条 comment
。似乎在 GitHub
上好像还没有删除这个功能。
编辑Label
讲完了如何创建、删除和评论 Issue
,接下来讲设置 Issue
的 Label
。
同样要进入 Issue
详情页,我们把光标移动到 Label
上,按下 C-c C-e
,然后在 minibuffer
中输入标签,可以使用 TAB
补全。多个用 ,
分割。
常用标签有 bug
、 documentation
、 duplicate
、 enhancement
、 good first Issue
、 help wanted
、 invalid
、 question
这些,你也可以自定义。

编辑完之后如下所示

编辑 Assignees
在开发中你可能需要把一个功能指派给别人做,你自己没时间,这时候就需要使用 Assignees
来指派给其他人。
在 Issue
详情也中编辑 Assignees
和 编辑 Label
一样,也是使用 C-c C-e
进行编辑,然后输入开发者的名字,也是可以用 TAB
补全。

Close Issue
当 Issue
开发完了就需要进行关闭,这时候也需要来到 Issue
详情页,在 State 中按下 C-c C-e
,然后在 minibuffer
中输入 y
表示确认关闭,这样就把 Issue
关闭了。
关闭后状态就会变成
close
关闭之后可以用同样的方式来再次打开,这里就不再赘述了。
改变标题
改变 Issue
标题这个需求一般来说不那么重要,我们简单说一下,还是和前面的编辑一样使用 C-c C-e
进行编辑,改完回车就完事了。