0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

10分钟快速掌握OpenHarmony社区贡献新流程

OpenAtom OpenHarmony 来源:未知 2023-06-20 21:10 次阅读

点击蓝字 ╳ 关注我们


开源项目 OpenHarmony
是每个人的 OpenHarmony

为提升Issue和PR(Pull Request)的处理效率,OpenAtom OpenHarmony(以下简称OpenHarmony)社区优化了Issue和PR处理流程,新支持了一系列交互命令和状态标签,用于明确处理阶段和当前处理责任人。社区CI Bot工具还提供了待办事项提醒能力,并能自动处理超期无效Issue和PR。流程交互更加友好,基于交互提示,还可以获知下一步需要如何操作。本文会对社区贡献流程优化点进行介绍,不管你是社区贡献的专家还是初涉开源社区的新手,都有必要花几分钟快速熟悉下OpenHarmony社区贡献流程的新优化点。流程也在持续优化中,如有变化,请以最新的为准。
需要注意的是,流程优化是为了辅助社区参与者提升效率,不会影响既有流程。如果不使用新支持的交互命令和状态标签,也可以使用既有流程正常处理Issue和PR。但是,强烈推荐大家使用这些新优化后的功能,这样可以明确当前处理责任人人,让Issue和PR更及时地得到响应处理。

1、新流程能解决什么问题

先回顾下社区Issue和PR处理时存在的问题痛点。经常关注社区的开发者会注意到,社区待处理的Issue和PR数量多的时候,处理速度会变得缓慢。导致Issue和PR不能有效处理的原因主要有:从社区贡献者一侧来分析,社区Issue和PR未规范提交,比如Issue描述不规范,缺少详细描述和验证步骤等关键信息;PR门禁编译失败、格式检测失败、门禁检查失败,DCO失败、未参考检视意见修改等,这些因素都会导致请求无法被处理而不能被合入。从社区贡献流程侧来分析,社区Issue和PR处理流程也存在一些改进点,比如当前缺少Issue责任人精准分配;缺少机制分配PR检视人,PR处理阶段不清晰;缺少处理超期时的主动提醒功能等;对超期的Issue和PR,系统不能自动处理等。


OpenHarmony社区为解决上述问题,对Issue和PR处理流程进行了优化,主要包含:


●标记状态标签,明确处理阶段责任人

通过标记状态标签识别处理责任阶段、明确处理人。如果Issue和PR提交不规范,会有状态标签显示当前处理责任人为提交人;如果提交的PR通过门禁测试,等待审核检视,当前处理责任人为Committer;如果已分配检视人员,当前处理责任人就是代码检视人员等。


●主动提醒责任人处理待办事项

CI Bot会发邮件每日提醒责任人处理名下的待办事项。强烈建议社区贡献者订阅Issue和PR的状态变化通知,这样就会接收系统的自动提醒。


●超期问题自动处理

基于规则,对于一些可以自动处理的情况进行分析,进行自动化处理。比如,对于验收中的Issue,如果长期未确认,系统会自动进行关闭;对于门禁未通过等情况导致不符合合入标准的PR,超过一定时间,也会自动关闭。


OpenHarmony社区通过这些流程优化来提升Issue和PR处理效率,下文会详细介绍流程的优化点和具体使用方法。


2、新流程介绍

以PR提交与审核流程为例,如图1所示,我们按状态标签进行讲解,开发者们也可以参考

https://gitee.com/openharmony/community/blob/master/zh/infrastructure/build_command.md


图1 PR审核处理流程图

2.1 Waiting_On_Author状态标签

PR提交人(社区贡献者)创建PR后,PR的标签为Waiting_On_Author,表示当前的责任人为PR提交人。CI Bot会提醒PR提交人及时处理该PR。如果PR提交人长时期未处理该PR,CI Bot会进行自动关闭。

如果PR提交人触发门禁构建,构建失败后,PR的标签依旧为Waiting_On_Author状态。如果检视人员或Committer审核人员提交了检视意见,需要社区贡献者去查看、修复,PR的标签会被标记为Waiting_On_Author状态。


2.2 Waiting_For_Review状态标签

当PR提交人评论命令start build(仓库配置门禁时使用该命令,如果未配置门禁,请使用code review命令),并且门禁构建成功后,PR的状态标签替代为Waiting_For_Review状态,表示当前的责任人为Committer审核人员,需要由Committer分配检视人员。CI Bot可以每日邮件定时提醒待办事项,催促Committer分配检视人员。


2.3 Reviewing状态标签

Committer可以通过命令assign [@gitee_id1 @gitee_id2...]分配检视人员。使用该命令时,Committer可以通过空格分隔来指定多个检视人员;如果命令中不指定gitee_id,Committer则安排自己为检视人员。分配检视人员后,PR的状态标签变换为Reviewing状态,表示当前的责任人为代码检视人员。

分配的检视人员需参与检视,给出检视意见,然后评论命令check comment提醒PR提交人处理;无检视意见时,评论命令lgtm,提醒Committer审核处理。


2.4 Waiting_For_Merge状态标签

当所有检视人员均对分配的PR没有检视意见时,并在PR评论区评论命令lgtm后,CI Bot会提醒Committer去审核该PR。此时,PR的状态标签变换为Waiting_For_Merge状态。


2.5 Merged 状态标签

对于Waiting_For_Merge状态标签的PR, 当Committer审核通过后,PR的状态标签会自动变换为Merged状态,表示该PR成功合入。


3、流程处理实例讲解

本节以Pull Request处理流程为例,按处理阶段分别进行讲解。


3.1 提交修改Pull Request

当PR提交人提交一个PR后,CI Bot会自动评论,如下图所示。根据提示,如果代码已经开发完毕,PR提交人在PR评论区评论start build来触发门禁。在触发门禁前状态标签为Waiting_On_Author,当前的处理责任人为PR提交人。

图2 新PR交互截图

如果审核检视人员为PR提交检视建议后,PR的状态标签变为Waiting_On_Author,需要PR提交人处理建议,优化修复提交的代码。当处理完毕,重新推送代码后,需要重新触发门禁。

注意:如果代码仓没有配置门禁,提示的内容稍有不同,需要评论的命令是code view。


3.2 门禁构建

在门禁通过后,PR的状态标签会替换为Waiting_For_Review状态,如下图所示。此后,该PR的处理责任人为代码仓的Committer。Committer会负责分配检视人员或者审核该PR。


图3 门禁构建成功截图

3.3 代码检视

当一个PR处于Waiting_For_Review状态时,Committer可以使用assign命令分配给检视人员进行检视,如下图所示。命令assign的具体用法,可以参考上一小节图片中的操作提示。当分配完毕检视人员,PR的状态标签会替换为Reviewing状态,当前的处理责任人为分配的检视人员。


图4分配检视人员截图

如果检视人员发现检视的PR存在问题,提出检视意见后,需要评论下check comment通知PR提交人根据检视意见进行修改。PR的状态标签会替代为Waiting_On_Author状态,当前的处理责任人为PR提交人。


图5提醒处理检视意见截图

如果PR不存在问题,检视人员认为可以合入,需要评论下lgtm(即:look good to me)通知Committer审核合入该PR。PR的状态标签会替代为Waiting_For_Merge状态,当前的处理责任人为Committer。


图6提醒审核合入截图

3.4 审核合入
当代码仓Committer认为PR满足合入要求,审核通过后,PR会被合入,此时PR的状态标签会替代为Merged状态,则PR成功被合入。

图7审核合入截图

4、CI Bot待办提醒

通过状态标签识别当前处理责任人后,就可以获取责任人的待办事项。通过记录打标签的开始时间,就可以计算当前处理阶段停留时间,从而可以发邮件提醒及时处理待办事项,并能自动化处理超期无效的Issue和PR。发邮件功能可以自行选择是否订阅。

4.1 每日待办提醒
如果你在社区有待办事项,社区会自动汇总并自动发邮件给你,提醒你及时处理。如果不想收到邮件,可以取消订阅。但强烈推荐你保持订阅,可以及时收到在社区的待办事项。下图为收到的待办事项邮件示例。

图8 待办事项邮件截图

4.2 自动超期处理
对于PR,审核检视人员需要及时响应处理;PR提交人也需要及时响应反馈的检视意见,如果长期未响应,不符合合入标准的PR,会在30天后被自动关闭。这样做是为了保持一个干净的社区贡献环境,也不用担心丢失代码,被关闭的PR也可以很容易被PR提交人重新打开。对于Issue,如果社区审核人员认为需要补充信息,或不能算做问题,以及需要Issue验收确认时,如果Issue提交人30天未响应,也会被自动关闭处理。在关闭之前,系统会发送提醒。请保持关注Issue和PR的变更信息。如下图所示:

图9 自动超期处理截图

5、小结

本文对OpenHarmony社区贡献流程优化点进行了介绍,包含新支持的一系列交互命令和状态标签,以及CI Bot的每日待办事项邮件、自动超期处理等。如有疑问,欢迎随时来社区反馈。




原文标题:10分钟快速掌握OpenHarmony社区贡献新流程

文章出处:【微信公众号:OpenAtom OpenHarmony】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 鸿蒙
    +关注

    关注

    57

    文章

    2306

    浏览量

    42734
  • OpenHarmony
    +关注

    关注

    25

    文章

    3658

    浏览量

    16132

原文标题:10分钟快速掌握OpenHarmony社区贡献新流程

文章出处:【微信号:gh_e4f28cfa3159,微信公众号:OpenAtom OpenHarmony】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    星光璀璨,聆听 OpenHarmony 贡献者之声

    在第三届开放原子开源基金会OpenHarmony技术大会上, 我们满怀敬意地对取得优秀成果的星光OpenHarmony技术俱乐部、星光导师、星光贡献者、星光活动进行了致谢。 他们不仅是技术的探索者
    发表于 10-28 17:09

    第三届OpenHarmony技术大会星光璀璨、致谢OpenHarmony社区贡献

    (技术专家组)、TSG星光贡献者和星光OpenHarmony技术俱乐部、星光导师、星光贡献者、星光活动等OpenHarmony社区
    的头像 发表于 10-21 14:10 186次阅读

    鸿蒙OpenHarmony南向/北向快速开发教程-迅为RK3568开发板

    优化开发流程-配置远程访问环境 P8_优化开发流程-编译源码和烧写镜像 P9_OpenHarmony源码目录介绍 P10_整体移植方案介绍 P11_编译目标分析 P12_编译框架基本概
    发表于 07-23 10:44

    400万!深开鸿OpenHarmony主仓代码贡献量再创里程碑!

    2024年7月8日,据OpenAtomOpenHarmony(以下简称“OpenHarmony”)官网显示,深开鸿在OpenHarmony社区主仓代码
    的头像 发表于 07-09 08:33 322次阅读
    400万!深开鸿<b class='flag-5'>OpenHarmony</b>主仓代码<b class='flag-5'>贡献</b>量再创里程碑!

    报名开启!第二届OpenHarmony开发者大会2024重磅来袭!

    论坛”为承载,聚焦OpenHarmony 技术革新,携手百位技术专家共同交流开发者关心的技术内容,全方位了解最新技术进展。 OpenHarmony开源三年多以来,社区
    发表于 05-14 15:23

    深开鸿升为OpenHarmony项目群A类捐赠人,引领开源生态新篇章!

    近日,深开鸿作为OpenHarmony核心共建单位、OpenHarmony生态委员会委员单位、OpenHarmony代码Top10贡献单位,
    的头像 发表于 04-18 08:33 763次阅读
    深开鸿升为<b class='flag-5'>OpenHarmony</b>项目群A类捐赠人,引领开源生态新篇章!

    诚迈科技获评OpenHarmony社区优秀贡献单位

    1月23日,OpenHarmony社区年会在京举行,诚迈科技凭借出色的技术创新能力以及在生态建设方面的突出贡献,获评“OpenHarmony社区
    的头像 发表于 01-26 10:04 395次阅读

    OpenHarmony社区运营报告(2023年12月)

    本月快讯•截至2023年12月22日,OpenAtomOpenHarmony(简称“OpenHarmony")社区累计超过6700名贡献者,产生26.9万多个PR,2.4万多个Star
    的头像 发表于 01-20 08:02 400次阅读
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>社区</b>运营报告(2023年12月)

    OpenHarmony社区运营报告(2023年12月)

    • 截至 2023 年 12 月 22 日,OpenAtom OpenHarmony(简称“OpenHarmony\")社区累计超过 6700 名贡献者,产生 26.9 万多个 PR
    发表于 01-10 15:44

    OpenHarmony社区运营报告(2023年12月)

    OpenHarmony")社区累计超过6700名贡献者,产生26.9万多个PR,2.4万多个Star,6.7万多个Fork,59个SIG。 • 2023年12月16日,以“技术创新,照见未来”为主题的首届开放原子
    的头像 发表于 01-08 21:15 737次阅读
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>社区</b>运营报告(2023年12月)

    OpenHarmony社区运营报告(2023年11月)

    本月快讯●截至2023年11月,OpenAtomOpenHarmony(简称“OpenHarmony")社区累计超过6200名贡献者产生24.4万多个PR,2.3万多个Star,6.2
    的头像 发表于 12-23 08:02 588次阅读
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>社区</b>运营报告(2023年11月)

    OpenHarmony社区运营报告(2023年11月)

    ")社区累计超过6200名贡献者产生24.4万多个PR,2.3万多个Star,6.2万多个Fork,59个SIG。 ●OpenHarmony 4.0 Release版本如期而至,开发套件同步升级到
    的头像 发表于 12-08 21:15 677次阅读
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>社区</b>运营报告(2023年11月)

    【报名开启】繁荣生态,人才先行︱首届OpenHarmony人才生态大会即将在上海召开

    OpenHarmony人才生态大会,交流碰撞人才培养思路,共享最新人才培养实践案例。期待更多的高校、伙伴与贡献者加入OpenHarmony社区,探索
    发表于 12-04 16:23

    OpenHarmony亮相MTSC 2023 | 质量&amp;效率共进,赋能应用生态发展

    遇到的问题和疑问,融入 OpenHarmony 生态共建和发展。 OpenHarmony 开源三年多来,社区快速成长,截至 2023 年 10
    发表于 11-28 15:41

    上海站报名启动! 2023年开源产业生态大会OpenHarmony生态论坛

    操作系统。近日,OpenHarmony 4.0 Release版本正式发布,目前已有超过6200名共建者、51家共建单位,贡献代码行数超过1亿行。 此次OpenHarmony生态论坛
    发表于 11-24 14:55