在浏览开源项目或者代码仓库的时候,不知道大家是否有注意到 Issue 这个功能。Issue 功能对个人而言,就如同 TODO list。你可以把所有想要在下一步完成的工作,如 feature 添加、bug 修复等,都写成一个个 Issue,放在上面。既可以作为提醒,也可以统一管理。
另外,每一次 commit 都可以选择性的与某个 Issue 关联。比如在 message 中添加 #n,就可以与第 n 个 Issue 进行关联。
commit message title, #1
上面的提交会作为一个 comment,出现在编号为 1 的 Issue 记录中。
此外,Issue 可以有额外的属性:
- Labels,标签。包括 enhancement、bug、invalid 等,表示 Issue 的类型,解决的方式。除了自带的以外,也可以去自定义。
- Milestone,里程碑。作为 Issue 的一个集合,通常用来表示项目的一个阶段,比如 demo、release 等,保护达成这些阶段需要解决的问题。有时候,也会与版本计划重合,比如 v1.0、v2.0 等。Issue 不能设置截止时间,但是 Milestone 可以。
- Assignees,责任人。指定这个 Issue 由谁负责来解决。
下面对 Milestone 属性做进一步介绍。
如上图所示,我这边事先创建了 6 个 Issue,分别命名为任务 1-6,这个界面是一个 Issue 看板,接下来我们看下 Milestone 的看板,如下图所示。
可以看到里程碑的看板,明显提供了更多的信息。第一栏是未启动的 Issue (开放和未分配),包含任务 3-4,第二栏是处理中的 Issue (打开和已分配),包含任务 1,显示分配的是 XianxinMao 这个 ID 用户,第三栏是已完成的 Issue (已关闭),包含任务 2,显示分配的也是 XianxinMao 这个 ID 用户。除此之外,我们可以看到右侧栏的 20% 完成进度条,以及这个 Milestone 的起始日期和截止日期、工时统计等等信息。
对于 Labels 和 Assignees,该文未进一步介绍,等待大家自行探索,更多详情,点击下方链接:
- https://gitcode.net/codechina/help-docs/-/wikis/docs/user/project/issues