Hasty Briefsbeta

双语

Reorient GitHub Pull Requests Around Changesets

2 days ago
  • GitHub拉取请求有一个主要问题:它们是一个巨大的可变变更集,导致过时的审查、丢失上下文以及难以清理先前的状态。
  • 建议的解决方案:变更集(拉取请求分支的可版本化、不可变快照),其中每个版本(v1、v2等)是固定的,反馈附加到特定版本。
  • 变更集允许延迟发布——贡献者可以在提出新版本之前私下推送多个提交,而审查者可以无混淆地审查原子化版本。
  • 反馈在变更集之间持续存在,显示来自先前版本的未解决评论,确保所有问题在接收之前得到处理。
  • 变更集可以通过不同的Git引用表示(例如,refs/pr/1234/v2),使得可以轻松地本地检出和比较特定版本。
  • 这种模式已经在Gerrit和Phabricator等其他工具中成功使用,并且可以添加到GitHub而不会破坏现有工作流程。