在我当前的团队中,在一个项目中,我们需要在每次合并之前执行手动步骤。我想要一个需要单击的复选框,上面写着“我运行了集成测试 XY”。如果未单击该复选框,则无法合并。
是否可以在Github中添加这样的复选框?也许通过状态检查?也许可以将 TODO 列表自动添加到每个 PR 中,并在检查所有内容之前阻止 PR 被合并?
您可以通过 markdown 在拉取请求描述中添加复选框:
### Checklist
- [ ] I have performed a self-review of my code.
- [ ] PR can be merged by a reviewer.
这将呈现为可移动且可单击的复选框列表,该列表将在检查时更新您的描述,因此它将持续存在。
如果所有 PR 都需要它,您还可以创建包含此清单的拉取请求模板。为此,请使用模板的内容创建一个文件
.github/pull_request_template.md
。
然后使用 Github Actions 检查这些任务列表: https://github.com/marketplace/actions/task-completed-checker
@alex 的解决方案是一个很好的解决方案,但通过 Github 操作配置 Github 检查列表可能会很痛苦,并且会占用大量时间,因为调试工作流程给您反馈的速度非常慢。
还有更多用户友好的选择。 GitHub 市场中有一些工具旨在直接解决此类问题。其中之一是,Pull Checklist,我实际上做到了,所以我有点偏见。该工具和 Pull Request Checklist Buddy 等其他工具可以帮助您根据您在其他参数中更改的文件,将阻塞清单与条件放在一起。如果您想避免 GitHub Actions 的一些烦恼,它们可能值得一看。