歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

Facebook代碼審核工具Phabricator使用指南——Audit

概覽
Phabricator支持兩種代碼審查工作流:“review”(提交前審查)和 “audit”(提交後審查)。
這篇文檔概述了通過Audit工具實現提交後審查流程。

Audit如何工作 使用審核工具允許提交和部署代碼,而無需等待代碼審查結果,雖然最終還是會進行代碼審查。Audit工具主要跟蹤兩件事:
  • 代碼提交(Commits),以及它們的審核狀態(譬如“未經審核(Not Audited)”、“認可(Approved)”、“引發擔憂(Concern Raised)”)。
  • 審核請求(Audit Requests)。審核請求提醒用戶去審核一次提交。它有多種觸發方式。(可見“審核觸發器”一節)
在審核工具的主頁(位於/audit/)或者phabricator首頁可以看到代碼的提交和需要你審核的審核請求。如下圖所示。
  • 必要的審核(Required Audits)。當你是某個項目的成員,或者是一個包的擁有者,Required Audits提示你去審核一次提交。當你認可這次提交時,審核請求會被關閉。
  • 問題提交(Problem Commits)。是指有人在審核過程中對你提交的代碼表示擔憂。當你消除了他們的疑慮並且所有審核人均對代碼表示認可時,問題提交將會消失。
舉例
  • 翠花進行了一次代碼提交
  • 鐵蛋接收到審核請求
  • 過了一陣兒,鐵蛋登錄Phabricator並在首頁看到審核請求
  • 鐵蛋檢查翠花提交的代碼。他發現代碼中的一些問題,之後他選擇了“引發擔憂”選項,並且在評論中描述了這些問題
  • 翠花收到一封關於鐵蛋對她的提交表示憂慮的email。她決定過一會兒再處理這個問題
  • 不久後,翠花登錄Phabricator並在首頁“問題提交”下看到提示
  • 翠花通過某些方式解決了那些問題(如“找鐵蛋討論”、“修復問題並提交”)
  • 鐵蛋表示滿意,並認可了最初那次提交
  • 審核請求將從鐵蛋的待辦事項中消失。問題提交也會從翠花的待辦事項裡消失
審核觸發器 審核請求可由多種方式觸發:
  • 將“Auditors: username1, username2”寫入提交注釋中,會觸發上述用戶接到審核請求。如下圖所示。

  

  • 可以在Herald工具中,根據提交的屬性創建一系列的觸發規則。如有文件被創建、文本被修改,提交人等。
  • 可以在任何提交中,通過提交注釋為自己創建審核請求。
在小團隊中進行審核 如果你身處一個小團隊並且認為不需要復雜的觸發規則,那麼你可以創建一個簡單的審核工作流,如下所示:
  • 創建一個新項目:“Code Audits”。
  • 為代碼提交創建一條全局規則:"Differential Revision" "does not exist"。在這條規則下,“Code Audits”項目的每一次提交都會觸發一次審核請求。
  • 所有工程師加入Code Audits項目。
     通過這種方式,所有項目成員都將收到每一次代碼提交的審核請求,但是,一旦某一位成員認可了這次提交,那麼所有的審核請求便會消除。實際上,這種方式強制大家遵守了一條規則:任何提交都應該被人看到。      一旦團隊壯大,便可改進觸發規則使每位開發人員只看到與他們有關的代碼修改。   審核工具小貼士:
  • 責任感。在審閱一次代碼提交時,你所負責的審核是被突出顯示的。你要為自己的任何審核行為負責。
  • diff對比區域,點擊行號將可添加內嵌評論。
  • 在diff對比區域,在行號上拖動可添加跨越多行的內嵌評論。
  • 內嵌評論最初只保存為草稿,直到你在頁面底部提交評論。
  • 按“?”鍵查看快捷鍵。

Copyright © Linux教程網 All Rights Reserved