这是一个动态文档,解释了我们如何协同管理古腾堡存储库。如果您想建议更改,请打开问题进行讨论或向文档提交拉取请求。
本文件涵盖:
健康的问题列表是指问题相关且可操作的列表。相关从某种意义上说,它们与项目当前的优先事项有关。可采取行动从这个意义上说,很清楚需要采取什么行动来解决问题。
任何不相关或不可操作的问题都应该关闭,因为它们阻碍了项目的进展。把问题清单想象成一张桌子:你的桌子越凌乱,就越难利用这个空间完成工作。
所有问题都应该有一个或多个标签.
工作流标签以“需要”开头,可以根据需要应用。理想情况下,每个工作流标签后面都有一个组,例如需要辅助功能反馈
,测试团队需要测试
等。
优先级高和OMGWTFBBQ优先级问题应该有一个受让人和/或处于活动里程碑中。
作为第一步,应在相关的支持论坛上发布帮助请求或“如何”问题。如果某个问题可能是错误但不清楚,支持团队或论坛志愿者可以帮助解决该问题,以帮助获取有效错误报告所需的所有正确信息。
以下是您可能经常看到的一些标签:
签出标签目录获取所有标签的列表。
我们把问题放在里程碑以便更好地对它们进行分类。问题从添加到里程碑WordPress(文字出版社)
和拉请求被添加到以结尾的里程碑中(古腾堡)
.
以下是您可能会看到的一些里程碑:
为了保持问题列表的健康,需要定期对其进行分类。急诊分诊台是审查现有问题的做法,以确保它们相关、可操作,并拥有所需的所有信息。
任何人都可以帮助分类,尽管您需要Gutenberg存储库上的贡献者权限才能修改问题的标签或编辑其标题。
请参阅Triage Contributors指南了解详细信息。
Gutenberg对所有代码和文档更改都遵循一个特性分支请求工作流。从高层来看,流程如下:
- 在本地签出新的功能分支。
- 进行更改,彻底测试。
- 当你满意时,提交你的更改,并推动分支。
- 打开您的拉动请求。
- 如果您是具有适当访问权限的常规投稿人,请适当标记和命名您的推送请求(请参阅下文)。
对于标记和命名拉请求,这里有一些准则需要考虑,以使编译changelog更加高效和有序。这些准则对经常捐款的人尤其重要。不要让以下内容成为分享工作的拦路虎——错误是意料之中的,而且很容易纠正!
- 在使用实验屏幕和功能时,应用
[类型]实验
标签而不是功能
,增强
等。
- 在为技术包开发新功能(脚本、创建块、添加反应挂钩等)时,应用
[类型]新API
标签而不是功能
,增强
等。
- 当修复错误或对项目中使用的内部工具进行增强时,请应用
[类型]构建工具
而不是漏洞
,增强
等
- 在pull请求标题中,与其描述为修复问题而进行的代码更改,不如考虑引用正在修复的实际错误。例如:与其说“检查组件中的可空对象”,不如说“单击复制块按钮时修复编辑器破损”。
在这一过程中,还有几点需要提及:
- 非平凡的拉请求之前应该有一个相关的问题,它定义了要解决的问题,并允许在实际编写代码之前讨论最合适的解决方案。
- 为了更容易合并代码,每个请求应该只包含一个概念更改。保持贡献原子化可以使拉请求讨论集中在一个主题上,并可以根据具体情况批准更改。
- 单独的请求可以解决与其链接的问题不同的项目或待办事项,如果问题不是普通问题,则不需要单个请求来解决单个问题。
除了自动化测试外,每个pull请求都要经过手动代码审查。代码审查的目标最好是:
- 正确-更改是否达到预期效果?
- 安全-邪恶的一方会找到某种方法来利用这一变化吗?
- 可读性——几个月后,你未来的自己能理解这种变化吗?
- 优雅-这一变化是否符合整体风格和建筑的美学要求?
- 利他主义——这种改变如何有助于更大的整体?
作为审阅者,你的反馈应该集中在想法上,而不是人。寻求理解、尊重并专注于建设性对话。
作为贡献者,您的责任是从建议中学习,并根据反馈重复您的拉请求。寻求合作,为更大的整体做出尽可能最好的贡献。
每个愿意尝试代码审查的人都鼓励进行代码审查。如果你审查了一个请求,并且对更改很有信心,那么批准它。如果你对它准备合并没有完全的信心,那么在你的审查中添加一条评论,说它应该在最终批准之前对它进行另一次审查。这可以帮助筛选出明显的错误并简化核心成员的审查。后续的复习也将有助于提高你对未来复习的信心。
如果你还不愿意留下完整的评论,试着评论一位公关。关于功能或更改背后的理由的问题也很有帮助。您还可以对理解的部分代码的更改发表评论,而无需留下完整的评论。
如果您难以获得评论,请参阅:如何审核您的拉取请求?
如果您的拉请求影响设计/UI,则需要适当标记以提醒设计。要请求设计审查,请添加需要设计反馈标签。如果有任何PR需要更新设计/UI,请使用Figma库更新标签。
作为指南,应审查的变更:
- 基于先前设计的更改,以确认设计在更改后仍然有效。
- 任何在视觉上改变事物的东西。
- 如果你只是想对一个想法或探索进行设计反馈。
拉取请求通常可以在以下情况下合并:
- 认为对代码库进行了值得的更改。
- 符合所有相关规范审查标准。
- 必要时进行充分的测试。
- 针对所有潜在的边缘情况进行审查。
- 已正确添加更改日志条目。
- 由原作者以外的人审阅。
- 重新定位到最新版本的
大旅行箱
分支。
最终的拉取请求合并决策由@wordpress/gutenberg-core公司团队。
GitHub上WordPress组织的所有成员都有能力审查和合并拉取请求。如果你已经审查了一份公关并且对代码有信心,那么批准拉取请求和评语ping@wordpress/gutenberg-core公司或参与PR的特定核心成员。一旦他们确认没有异议,您可以将PR合并到主干中。
大多数拉入请求都会自动分配一个发布里程碑,但请确保为合并的拉入请求分配了一个里程碑。这样做将创建代码何时到达的历史遗留,并使所有项目贡献者(甚至非技术贡献者)都可以访问此信息。
有时,拉请求可能无法合并,无论对其应用了多少额外的工作(例如超出范围)。在这些情况下,最好与贡献者进行亲切的沟通,同时描述为什么拉请求被关闭,这将鼓励未来的有效参与。
确保:
- 感谢贡献者的时间和努力。
- 充分解释决定结束拉取请求背后的理由。
- 链接到尽可能多的支持文档。
如果您希望使用模板:
感谢____为您在这个拉取请求上花费的时间。
我关闭此拉取请求是因为____。为了进一步澄清,____。
有关更多详细信息,请参阅____和____。
项目中使用了两个GitHub团队。
如果您符合以下标准,即一些有意义的贡献已被接受到存储库中,并且希望被添加到古腾堡团队,请随时在#核心编辑松弛通道.
我们使用GitHub项目跟踪那些不能立即采取行动的细节,但我们希望保留这些细节以备将来参考。
一些关键项目包括:
- 第2阶段–古腾堡第二阶段所需的开发任务。
- 第二阶段设计–第2阶段的设计任务。注:具体项目可能有自己的董事会。
- 思想–包含门票的项目,虽然暂时关闭,但可以在未来重新访问。