GitHub 如何在其问题跟踪系统中构建子问题

主要观点:GitHub 工程师 Shaun Wong 分享了添加子问题支持的见解、开发过程中的经验教训以及子问题在工作流程中的关键作用;GitHub 子问题几个月前已启动预览,能让开发者用父子层次结构组织任务,可将复杂任务分解为小且易管理的组件,方便团队跟踪进度和了解子任务对整体项目的贡献;面临是修改现有任务列表功能还是设计全新层次结构的决策,最终选择后者并对底层数据模型和渲染逻辑进行重大更改;从数据建模角度,子问题表存储父子问题关系,还有基于子问题自动更新父问题进度的关键功能,在实现层面用 MySQL 关系建模并通过 GraphQL 端点暴露以实现高效灵活的数据检索;内部使用子问题在多个项目中证明能简化和加速项目管理,团队能更好地管理大型项目、识别依赖等;同时 GitHub 还将其他预览功能推向通用可用性,如问题类型、高级搜索、增加 GitHub Projects 中的问题限制等。

关键信息:

重要细节:

  • 示例中父问题可分解为多个子任务并分配给不同团队
  • 数据建模中子问题表存储父子问题链接
  • 实现层面用 MySQL 关系建模和 GraphQL 端点暴露
  • 其他预览功能包括问题类型、高级搜索、增加问题限制等
阅读 9
0 条评论