GitHub项目

GitHub 问题是一个很好的协作工具——但由于其仓库范围限制以及缺少拖拽式的待办事项列表和可视化的 Kanban 看板,它并不是一个完美的工作可视化和跟踪工具。

GitHub 管理不同仓库工作流的中央平台是 GitHub Projects。它建立在 GitHub Issues 之上,支持最多 50 个仓库中的问题。GitHub Projects 是一个灵活的协作平台,你可以自定义待办事项和看板,并与其他团队或社区共享。

注意:新的 GitHub Issues 或 GitHub Projects(Beta)

在撰写本书时,GitHub Projects 正在进行全面重构。新的部分目前被称为 GitHub Projects(beta)或新的 GitHub Issues,将在完成后取代 GitHub Projects。目前尚不完全明确最终的名称是什么。由于新的体验代表了未来,因此本书将专注于这一部分。

目前,新的体验还没有 Jira 或 Azure Boards 那么成熟。但有一个非常棒的团队在开发它,我相信如果完成,它将成为市场上最好的解决方案之一!

请注意,每个月都会推出许多新功能,因此所有截图可能很快就会过时。请关注更新日志( https://github.blog/changelog/ ),以随时了解每月发布的所有新功能。

开始使用

GitHub Projects 可以包含来自多个仓库的问题和拉取请求。因此,它们必须在组织级别或个人仓库的 GitHub 个人 profile 中创建。

要创建一个新项目,导航到组织的主页或 GitHub 个人 profile 中的 "Projects" 部分,然后点击 "New Project"(见图 2.14):

image 2024 12 26 19 47 51 116
Figure 1. 图 2.14 – 在个人资料或组织中创建新项目

将工作项添加到项目

默认的项目视图是表格视图,优化用于输入数据。按下 Ctrl + space 或点击表格的最后一行。您可以直接输入一个新的工作项名称,稍后将该项转换为问题(issue)。或者,您可以输入 # 并选择一个仓库,然后选择可用的问题和拉取请求(pull requests)(见图 2.15):

image 2024 12 26 19 50 32 810
Figure 2. 图 2.15 – 将问题、拉取请求或草稿工作项添加到待办事项列表

为你的工作添加元数据

您可以轻松地为项目添加不同的元数据字段。目前,支持以下类型:

  • 日期字段:值必须是有效的日期。

  • 数字字段:值必须是数字。

  • 单选:值必须从一组选项中选择。

  • 文本字段:值可以是任意文本。

  • 迭代:值必须从一组日期范围中选择。过去的日期范围会自动标记为已完成,包含当前日期的日期范围会标记为当前。

要添加新字段,按 Cmd + K(Mac)或 Ctrl + K(Windows/Linux)打开命令面板并开始输入“创建新字段”。您也可以点击右上角的加号并选择 + 新字段。输入字段名称并选择字段类型。

使用表格视图

项目的默认视图是高度灵活的表格视图,您可以使用它来输入数据并通过拖放来优先排序行。您可以通过打开列标题的菜单或打开命令面板(Cmd + K 或 Ctrl + K)并选择其中一个命令来对数据进行排序、筛选和分组。

如果您对表格视图进行分组,您可以直接将项目添加到某个组中,或通过将项目拖动到另一个组来更改项目的值(见图 2.16):

image 2024 12 26 19 54 45 969
Figure 3. 图 2.16 – 表格视图支持分组、筛选和排序

使用看板视图

您可以将视图切换为看板视图,将您的工作以可配置的看板形式展示。看板可以为任何字段中的每个值显示一列!您可以通过视图的列字段属性来设置这一点。您可以将项目拖动到另一个列中以更改其状态。目前,您还无法对看板进行分组或使用泳道,但您可以通过过滤器为不同类型的工作项创建单独的看板(见图 2.17)。

image 2024 12 26 19 56 47 211
Figure 4. 图 2.17 - 看板视图

您可以通过点击看板右侧的加号来添加新列,选择您希望作为列字段的任何字段。这为您提供了一种非常灵活的方式来可视化您的工作(见图 2.18)。

image 2024 12 26 19 57 50 169
Figure 5. 图 2.18 – 选择任何字段作为看板的列字段

看板视图优化了工作可视化、流程优化,并限制了在制品数量 (WIP)。

使用视图

每次您对视图中的数据进行排序、筛选或分组,或在表格视图和看板视图之间切换时,标签页头部的蓝色图标会显示该视图有未保存的更改。您可以在菜单中查看这些更改,并选择保存或丢弃它们。您也可以将它们保存为新视图(见图 2.19)。

image 2024 12 26 19 59 38 679
Figure 6. 图 2.19 – 处理视图修改

创建新的自定义视图、重命名视图并使用拖放方式进行排列非常简单。

工作流

您可以使用工作流来定义当问题或拉取请求转换到另一个状态时会发生什么。目前,您只能启用或禁用默认工作流——但在未来,您将能够编写自己的工作流(见图 2.20)。

image 2024 12 26 20 01 16 419
Figure 7. 图 2.20 – 工作流定义了项目(items)状态变化时会发生什么

洞察

您可以通过非常灵活的图表来获得进度的洞察,这些图表报告实时数据。您可以通过右上角的菜单访问洞察,或从视图中创建图表。您可以使用预定义的时间范围,也可以选择自定义范围。您还可以使用宏来过滤图表,例如使用 @current 或 @next 过滤迭代字段,或使用 @me 过滤指派人字段。您可以通过点击禁用图表中的状态,并且可以将鼠标悬停在日期上查看详细信息(见图 2.21):

image 2024 12 26 20 02 50 334
Figure 8. 图 2.21 – 使用灵活的图表获取实时数据的洞察

在写本书时,洞察只支持一种类型的图表——燃尽图——并且仅按项目数量和状态进行显示。但这将很快发生变化,您将能够创建各种灵活的图表,可以根据不同的列进行更改。

管理访问权限

由于项目可以跨多个仓库共享,您可以在设置中配置可见性和访问权限。项目可以设置为公开或私有。这使您能够创建可以与公众共享的路线图。在组织中,您可以为组织成员设置基础权限,包括无访问权限、只读、写入或管理员权限。在个人项目中无法做到这一点。但您可以邀请特定的协作者并授予他们只读、写入或管理员权限。

为了提高可发现性,您可以将项目添加到仓库中(见图 2.22):

image 2024 12 26 20 04 36 275
Figure 9. 图 2.22 – 将项目添加到仓库

GitHub 项目是一个非常灵活的解决方案,可以管理您的工作并根据需要进行调整。要了解更多关于 GitHub 项目的信息,请访问 GitHub 项目文档

项目仍处于测试阶段,但已经发布的功能令人印象深刻,在不久的将来,这将是最灵活的解决方案,能够轻松地与社区共享您的配置。请关注更新日志,网址为 GitHub Changelog