在目前已使用的質量內建的工程實踐中不可否認的一個實踐為代碼審查 它被用作提高產品交付質量和提高開發過程效率的有效措施。 Git又是目前當紅的源碼管理工具,若你的團隊目前已經選用了GitLab來作為托管工具,那此文中你可以學到如何通過GitLab的Merge Request(合並請求)進行代碼審查以及我們遵循的現有代碼審查最佳實踐來改進工作流程。
在我們討論如何進行代碼審查之前,讓我們先來回顧一下代碼評審的一般原則。
代碼評審的一般原則
- 代碼評審是任何開發過程中不可或缺的一部分 - 將其打印出來並放在牆上以便記住。可參考之前寫過的你的代碼評審需要來一次清單革命!
- 代碼評審是在小段的邏輯完整的代碼片段上執行的,例如功能,任務,錯誤修復,改進等。
- 只有通過審核的代碼才會發送到測試部門。
- 該項目的所有開發人員都會進行代碼評審,無論他們的級別如何。
- 項目的所有開發人員都應該通過代碼評審,無論他們的級別如何(初級開發人員也應該審查經驗豐富的中高級專家的代碼)。
接下來我們將介紹如何使用GitLab提供的工具來進行代碼評審。
GitLab中的merge request指的是把代碼從一個分支合並到另一個分支上做的操作。
創建一個Merge request會涉及到的主要參數為:
- source branch
- target branch
- title
- description
-
assignee
content_Creating-merge-request.png
使用Merge Request時的操作步驟:
- 編寫代碼並將其推送到單獨的分支。
- 為主要開發分支創建合並請求。 Assignee以及說明字段和評論中被提到的那些人將通過電子郵件通知合並請求。如果需要某一位開發人員關注,你可以在描述字段中@該名開發人員。
- 等到MR被接受或拒絕,並提供有關必要修復的評論。
- 參與有關修復的討論。 (GitLab允許回復評論)
- 修復。
- 將更改推送到你的分支。
- 打開一個新合並如果最后一個MR被關閉(如果合並請求未關閉,它將自動更新,直到最后一次提交為止)。
- 通過注釋合並請求或以其他方式報告已實施的修復。

應該將Merge Request分配給誰
對於合並請求,它們的分配取決於各種因素。根據項目的人數和專業水平,可以有不同的選擇。因此,如果您是團隊中唯一的開發人員,請為自己分配合並請求。
否則,請與另一位在項目中獨立的開發人員交談,並讓他審查彼此的代碼。文檔審查通常也是必要的,因為在您執行此操作后,您將確保其他開發人員可以在必要時使用您的代碼。
如果您是項目的兩名開發人員,請相互分配合並請求。如果有三個或更多開發人員,您可以自由選擇。
你的團隊可以在工作日的開始和結束時或根據要求隨時進行代碼審查。團隊可以決定何時進行代碼審查,最重要的是團隊成員之間的持續協作。
用Merge Requests產生的代碼評審如何進行更精細化的流程管理之后可以繼續討論。
作者:CC先生之簡書
鏈接:https://www.jianshu.com/p/198915ac64ba
來源:簡書