如何加入Apache开源社区:Apache ServiceComb (incubating) 微服务开源项目实例讲解
近期,熱衷開源和微服務的伙伴們非常關注如何加入到 微服務 開源項目 Apache ServiceComb (incubating) 社區。Apache ServiceComb 作為開源的Apache軟件基金會孵化項目,加入方式和常規的加入開源社區的方式大體一致,一般為三個階段:
訂閱并關注社區動態;
開始在開源社區提交第一份代碼;
深度加入社區討論并貢獻。
以下將詳細向大家講述如何一步步加入ServiceComb社區。
Step 1 訂閱并關注社區動態
訂閱和關注社區動態的途徑有:即時通訊工具(社區微信群、gitter)、社區公眾號、開發者郵件列表、門戶網站。
設計和需求上需要討論的特性,優先使用郵件列表進行討論。
設計已經足夠清晰,或對于部分小的任務(如代碼bug修復、文檔完善、網站優化等),其本身不需要過多討論,則可在JIRA中直接新建任務進行代碼貢獻,參考下面Step2。
用戶業務的微服務技術選型或ServiceComb的概念性問題等,建議直接到微信群或者gitter里進行咨詢并尋求幫助。
其他求助性問題,可及時聯系ServiceComb小助手。
即時通訊工具
掃描下方二維碼或搜索ServiceComb小助手加入微信群,加入后可以在微信群中咨詢和求助,會有熱心的伙伴和committer 及時的響應回復。
也可使用Github賬號登錄gitter(地址 https://gitter.im/ServiceCombUsers/Lobby)進行在線討論,國內的伙伴們更習慣于使用微信群進行在線交流,但為了更方便后來加入的人可以檢索并查閱前期的討論內容存檔,所以ServiceComb社區推薦使用gitter,gitter聊天界面見下圖。
郵件列表
郵件工作方式是開源社區極力推崇的方式,通過訂閱開發者郵件可以及時獲取到社區開發者的郵件討論內容,可發起討論,也可通過回復感興趣的討論題目參與到討論中(郵件內容均使用英文),郵件的存檔功能可以方便開發者查閱歷史問題的討論過程。
訂閱郵件方式:
發送任意內容到
dev-subscribe@servicecomb.incubator.apache.org
收到來自dev-help的郵件后,再直接回復任意內容來確認訂閱郵件列表即可。
訂閱成功后發送郵件到
dev@servicecomb.apache.org
參與社區討論與寫作,任何想法或建議以及技術/社區的討論咨詢都是受歡迎的。
郵件存檔內容可通過
https://www.mail-archive.com/
搜索ServiceComb獲取。
社區公眾號
掃描下方二維碼關注公眾號或微信公眾號中搜索ServiceComb進行關注,公眾號會定期的發布和推送ServiceComb近期相應資訊(干貨資料、學習資源、線上活動、線下活動等)。
門戶網站
ServiceComb門戶網站是社區的官方入口,包括快速入門指南、用戶手冊、開發者手冊、常見問題和開發博文等。
網站地址:?
http://servicecomb.incubator.apache.org/cn/
Step 2 在社區提交第一份代碼(PR)
當關注社區并嘗試調試使用后,會發現一些簡單的bug(如文檔或代碼格式問題等),可以通過fix簡單的bug來熟悉ServiceComb社區的開發流程。
發現問題并提交Issue
由于ServiceComb的任務管理是在Apache JIRA上進行的,所以需要先注冊并登錄到JIRA。關于JIRA詳細使用方法請參考JIRA使用幫助:
http://servicecomb.incubator.apache.org/cn/developers/use-jira/
注冊并登錄到
https://issues.apache.org/jira/projects/SCB,
點擊左側Kanban可以看到當前待處理、處理中和已經完成的任務列表。
? ? ? ?
點擊新建創建新的issue或者task進行問題或任務跟蹤,選擇相應的模塊并添加描述信息。
任務提交到JIRA后,需要在本地進行代碼開發,進行第一份代碼的提交。
提交第一份代碼(PR)
開發者在GitHub上fork倉庫后clone到本地進行代碼修改,修改完成并本地測試通過后可以創建PR提交代碼,提交PR后系統會自動運行CI進行代碼測試。
CI驗證通過后會有其他開發者或者maintainer進行review,沒有問題后會被approve并merge到主干分支。
具體可參考門戶網站上開發者手冊中的代碼提交指南:
http://servicecomb.incubator.apache.org/cn/developers/submit-codes/
創建PR的時候,PR的title要以JIRA中對應的問題編號開頭,如下圖中 [SCB-327],系統就會自動關聯本次提交到相應JIRA任務下,方便進度跟蹤。
committer會對提交的代碼進行review,如無問題則會對PR進行approve并merge,否則會對PR進行comment,作者需根據comment進行代碼修正并push更新最新代碼。
至此,您已經熟悉了ServiceComb社區的初級的開發流程,也是常規的社區開發方法(不同的社區承載體會有細微差異,如kubernetes的問題跟蹤是直接承載github的issue上)。
下一步就可以深度參與到ServiceComb的討論并進行貢獻。
Step 3 深度參與到ServiceComb討論并貢獻
由于開源社區強調開放性,當開發者想在社區里做一些較大或中長期特性時,則需在ServiceComb社區發起特性討論。
如何發起特性討論
通過郵件發Proposal到社區進行討論,Proposal中有貼圖或附加文檔時可先創建好文件鏈接,將鏈接貼到郵件里即可,創建文件可以有一下兩種方式:
在JIRA上創建一個對應的特性任務,并將Proposal文檔添加到該任務的附件中,拷貝鏈接。
通過github向servicecomb.io網站以blog的形式提交文件,將該blog地址拷貝到郵件中。
文檔附件可參考:
http://servicecomb.incubator.apache.org/docs/service-registry-refactor-proposal/
Proposal郵件參考:
當在郵件中討論清楚特性設計后,就可以開始對應的代碼開發,或對于部分小的任務(如代碼bug修復、文檔完善、網站優化等),其本身不需要過多討論,則可參考上一步驟 Step 2 中的開發流程進行代碼貢獻。
遇到其他本文章未解決的問題(如用戶業務準備進行微服務技術選型或ServiceComb的概念性問題等)時,建議直接到微信群或者gitter里進行咨詢并尋求幫助。
社區鼓勵多勞多得和技術沉淀,堅持貢獻社區可以收獲來自社區的禮品激勵驚喜,堅持長期使用和參與社區項目的伙伴,將可能被選舉成 Apache committer 或者取得更高的榮譽,希望本文能對熱衷開源及ServiceComb社區的伙伴們有所幫助,也歡迎積極參加ServiceComb的線上及線下活動。
溫馨提醒:ServiceComb社區committer英雄招募中
有興趣者請掃描添加ServiceComb小助手并留言“英雄招募”
Apache ServiceComb (incubating) 項目地址
https://github.com/apache/incubator-servicecomb-java-chassis
https://github.com/apache/incubator-servicecomb-service-center
https://github.com/apache/incubator-servicecomb-saga
Apache ServiceComb (incubating) 官網
http://servicecomb.incubator.apache.org/
總結
以上是生活随笔為你收集整理的如何加入Apache开源社区:Apache ServiceComb (incubating) 微服务开源项目实例讲解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 原码、反码与补码及其意义
- 下一篇: 4001 弟弟