點擊藍字 ╳ 關注我們
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
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-AANJ6AAN_5Ku-vhU388.png)
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狀態。
當PR提交人評論命令start build(倉庫配置門禁時使用該命令,如果未配置門禁,請使用code review命令),并且門禁構建成功后,PR的狀態標簽替代為Waiting_For_Review狀態,表示當前的責任人為Committer審核人員,需要由Committer分配檢視人員。CI Bot可以每日郵件定時提醒待辦事項,催促Committer分配檢視人員。
Committer可以通過命令assign [@gitee_id1 @gitee_id2...]分配檢視人員。使用該命令時,Committer可以通過空格分隔來指定多個檢視人員;如果命令中不指定gitee_id,Committer則安排自己為檢視人員。分配檢視人員后,PR的狀態標簽變換為Reviewing狀態,表示當前的責任人為代碼檢視人員。
分配的檢視人員需參與檢視,給出檢視意見,然后評論命令check comment提醒PR提交人處理;無檢視意見時,評論命令lgtm,提醒Committer審核處理。
當所有檢視人員均對分配的PR沒有檢視意見時,并在PR評論區評論命令lgtm后,CI Bot會提醒Committer去審核該PR。此時,PR的狀態標簽變換為Waiting_For_Merge狀態。
對于Waiting_For_Merge狀態標簽的PR, 當Committer審核通過后,PR的狀態標簽會自動變換為Merged狀態,表示該PR成功合入。
3、流程處理實例講解
本節以Pull Request處理流程為例,按處理階段分別進行講解。
當PR提交人提交一個PR后,CI Bot會自動評論,如下圖所示。根據提示,如果代碼已經開發完畢,PR提交人在PR評論區評論start build來觸發門禁。在觸發門禁前狀態標簽為Waiting_On_Author,當前的處理責任人為PR提交人。
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-ATKVzAABFcxrwHQQ790.jpg)
如果審核檢視人員為PR提交檢視建議后,PR的狀態標簽變為Waiting_On_Author,需要PR提交人處理建議,優化修復提交的代碼。當處理完畢,重新推送代碼后,需要重新觸發門禁。
注意:如果代碼倉沒有配置門禁,提示的內容稍有不同,需要評論的命令是code view。
在門禁通過后,PR的狀態標簽會替換為Waiting_For_Review狀態,如下圖所示。此后,該PR的處理責任人為代碼倉的Committer。Committer會負責分配檢視人員或者審核該PR。
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-AHvQGAAB5OLgwXLU108.jpg)
當一個PR處于Waiting_For_Review狀態時,Committer可以使用assign命令分配給檢視人員進行檢視,如下圖所示。命令assign的具體用法,可以參考上一小節圖片中的操作提示。當分配完畢檢視人員,PR的狀態標簽會替換為Reviewing狀態,當前的處理責任人為分配的檢視人員。
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-AGJjVAAA62fgIEFw771.jpg)
如果檢視人員發現檢視的PR存在問題,提出檢視意見后,需要評論下check comment通知PR提交人根據檢視意見進行修改。PR的狀態標簽會替代為Waiting_On_Author狀態,當前的處理責任人為PR提交人。
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-AUT3mAAA8Y0DkPW0490.jpg)
如果PR不存在問題,檢視人員認為可以合入,需要評論下lgtm(即:look good to me)通知Committer審核合入該PR。PR的狀態標簽會替代為Waiting_For_Merge狀態,當前的處理責任人為Committer。
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-ACXdPAAA-YpRFuMs793.jpg)
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-AelPqAAAyqGjI4s0915.jpg)
4、CI Bot待辦提醒
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9M-AJRwJAAC1jIjZJVY604.png)
![](https://file1.elecfans.com//web2/M00/9D/B6/wKgaomTn9NCAaqgRAABi0h_ao7k377.jpg)
5、小結
本文對OpenHarmony社區貢獻流程優化點進行了介紹,包含新支持的一系列交互命令和狀態標簽,以及CI Bot的每日待辦事項郵件、自動超期處理等。如有疑問,歡迎隨時來社區反饋。
原文標題:10分鐘快速掌握OpenHarmony社區貢獻新流程
文章出處:【微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。
-
鴻蒙
+關注
關注
57文章
2392瀏覽量
43050 -
OpenHarmony
+關注
關注
25文章
3744瀏覽量
16577
原文標題:10分鐘快速掌握OpenHarmony社區貢獻新流程
文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
共榮開源生態!軟通動力子公司鴻湖萬聯榮獲“2024年度開源鴻蒙社區卓越單位”
![共榮開源生態!軟通動力子公司鴻湖萬聯榮獲“2024年度開源鴻蒙<b class='flag-5'>社區</b>卓越單位”](https://file1.elecfans.com/web3/M00/06/D0/wKgZO2ePW6qAc3dTAAEXbD3YoTE634.png)
回顧OpenHarmony社區2024年度精彩瞬間
軟通動力榮膺“openGauss社區突出貢獻單位”
OpenHarmony人才生態大會南向生態社區發展論壇在武漢圓滿舉辦
![<b class='flag-5'>OpenHarmony</b>人才生態大會南向生態<b class='flag-5'>社區</b>發展論壇在武漢圓滿舉辦](https://file1.elecfans.com//web3/M00/00/66/wKgZO2dJIDCAD9paAAEFSUV2MvU065.png)
OpenHarmony人才生態大會南向生態社區發展論壇在武漢圓滿舉辦
星光璀璨,聆聽 OpenHarmony 貢獻者之聲
第三屆OpenHarmony技術大會星光璀璨、致謝OpenHarmony社區貢獻者
第三屆OpenHarmony技術大會在上海成功舉辦
鴻蒙OpenHarmony南向/北向快速開發教程-迅為RK3568開發板
400萬!深開鴻OpenHarmony主倉代碼貢獻量再創里程碑!
![400萬!深開鴻<b class='flag-5'>OpenHarmony</b>主倉代碼<b class='flag-5'>貢獻</b>量再創里程碑!](https://file.elecfans.com/web2/M00/35/6C/poYBAGIq5qqAQJzlAAA5OpNWiJA439.png)
OpenHarmony之開機優化
報名開啟!第二屆OpenHarmony開發者大會2024重磅來襲!
嵐圖發布“琥珀電池”,續航達900km,10分鐘充電即可滿足450km續航?
深開鴻升為OpenHarmony項目群A類捐贈人,引領開源生態新篇章!
![深開鴻升為<b class='flag-5'>OpenHarmony</b>項目群A類捐贈人,引領開源生態新篇章!](https://file.elecfans.com/web2/M00/35/6C/poYBAGIq5qqAQJzlAAA5OpNWiJA439.png)
3分鐘快速實現串口PLC遠程下載程序操作說明
![3<b class='flag-5'>分鐘</b><b class='flag-5'>快速</b>實現串口PLC遠程下載程序操作說明](https://file1.elecfans.com/web2/M00/C1/07/wKgZomXcPLCAEo-pAASDGLfbaEg703.png)
評論