开源特训营 - Lesson 6 - 如何提交一个合格的PR
編輯:李明康
責編:袁睿斌
作者:課程助教 - 蘇斌
主講教師:張齊勛(北京大學)、趙生宇(同濟大學)
本次課程的主題為《如何提交一個合格的PR》,主講者為來自北京大學的張齊勛老師和來自同濟大學的博士研究生趙生宇同學。
?
張齊勛老師首先回顧了前五次課的主要內容,然后由趙生宇老師主講今天的課程內容。
實操基礎:Issue的功能有哪些?
Issue的構成包括標題(Title)、內容(Body)、評論(Comments)、標簽(Labels)、指派者(Assigness)、所屬項目看板(Project)和里程碑(Milestone)。
?
Issue的典型功能是提供一個提問和交流的平臺,可以在這里提交軟件使用過程中出現的bug,也可以提交軟件還需要添加的功能模塊。
理論基礎:異步溝通與信息沉淀
Issue的理論基礎概念包括異步溝通和信息沉淀。
?
異步溝通的優點包括跨時區合作,個人開發者的時間成本低;不過異步溝通存在著以下挑戰:總體溝通的時間成本較高、需要盡量減少溝通的回合數并且需要盡量在一次溝通中表達盡量多的內容。
?
信息沉淀的優點包括把所有信息都沉淀下來,可后期檢索,此外沉淀信息可為后來人提供有效的查詢路徑。
實操進階:多角色視角下的Issue?????
在共同協作的開發模式下,溝通是必不可少的環節,那么如何降低總體的溝通成本呢?趙老師提出了“開源社區是互惠互利,誰也不欠誰”的觀點:對于開發者而言,提出Issue之前需要先搜索有無相關的歷史Issue,避免重復提問。提交Issue時,內容也盡量詳實充分,例如如果是Bug,說明運行環境、參數配置等,最好是可以提供日志或最小可復現倉庫;對于維護者而言,需要做到的是維護良好的社區溝通環境、提供有效的溝通指引、使用模板指引開發者提供更全面的信息并且設計有效的流程使得Issue可以被更快地響應。
理論進階:管理學視角下的Issue流程
趙老師從管理學的視角下解釋了開源過程中的相關概念。
?
管理學的主要目的是在現有條件下通過合理的組織和配置各種資源,提高生產力水平。則以下概念從管理學的角度可以這樣理解:
?
異步溝通:減少同步溝通而減少核心維護者的時間成本;
信息沉淀:減少反復溝通而減少開發者搜尋解決方案的成本和維護者反復回答的成本;
流程清晰:減少決策的心智成本同時降低響應時間從而使開發者有更好的體驗;
流程自動化:減少組織的制度成本而使整體項目可以更加順滑的運轉。
活動回顧視頻
點擊小程序觀看第6期活動視頻哦~
開源社簡介
開源社是由國內外支持開源的企業,社區及個人,依“貢獻,共識,共治”原則,所組織的廠商中立、純志愿者、非營利的開源聯盟,旨在共創健康可持續發展的開源生態體系,并推動中國開源社區成為全球開源軟件的積極參與及貢獻者。我們專注于開源治理、國際接軌、社區發展和開源項目。
相關閱讀?|?Related Reading
開源特訓營 - Lesson 1 - 開源基礎
開源特訓營 - Lesson 2 - 項目啟動
開源特訓營 - Lesson 3 - GITHUB倉庫管理?
開源特訓營 - Lesson 4?-?如何運營社區
開源特訓營 - Lesson 5?-?社區如何評審代碼
開源特訓營
喜歡本篇內容請給我們點個在看
總結
以上是生活随笔為你收集整理的开源特训营 - Lesson 6 - 如何提交一个合格的PR的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么这么忙,还依然做不好事情?
- 下一篇: 改进程架构,Edge优化浏览器内存问题