代碼審查工具 phabricator 使用學習

phabricator 在線文檔:
https://secure.phabricator.com/book/phabricator/

diffusion 基本說明
https://secure.phabricator.com/book/phabricator/article/diffusion/

Repository 分類說明以及如何導入一個已存在的代碼倉庫
https://secure.phabricator.com/book/phabricator/article/diffusion_uris/

查看或導入已存在的代碼倉庫
https://secure.phabricator.com/book/phabricator/article/diffusion_existing/

配置由 phabricator 託管的代碼倉庫
https://secure.phabricator.com/book/phabricator/article/diffusion_hosting/

review 與 audit 的區分
https://secure.phabricator.com/book/phabricator/article/reviews_vs_audit/

arcanist 快速安裝
https://secure.phabricator.com/book/phabricator/article/arcanist_quick_start/

arcanist 基本使用說明
https://secure.phabricator.com/book/phabricator/article/arcanist/
https://secure.phabricator.com/book/phabricator/article/arcanist_diff/

Differential 基本使用說明
https://secure.phabricator.com/book/phabricator/article/differential/

Audit 基本使用說明
https://secure.phabricator.com/book/phabricator/article/audit/

Inline Comments 作用說明
https://secure.phabricator.com/book/phabricator/article/differential_inlines/

Herald 規則引擎配置說明
https://secure.phabricator.com/book/phabricator/article/herald/

強制執行 Code Review --創建 Herald 規則
https://www.jianshu.com/p/b1a75a14638c   
   
   
post-push code review workflow(Audit):
1、開發人員提交代碼到代碼庫,系統根據 Herald 設定規則向特定人員發送審查申請(Audit Request);
2、審查人員收到審查申請,通過 Open Audits 查看提交的變更內容,如果發現問題,可通過添加評論的方式並以"Raise Concern"向開發人員反饋回去;
3、開發人員收到反饋郵件,登錄到 phabricator 查看反饋內容,然後修改代碼後再次提交,並且以"Request Verification"通知審查人員再次審查;
4、審查人員確認修改無誤後,使用"Accept Commit"關閉本次審查工作流;

pre-push code review workflow(Differential):
1、開發人員 author 在自己機器上開發好代碼,通過本機安裝的 arcanist 工具推送變更內容(arc diff)到 phabricator 系統的 Differential 面板中,等待 reviewer 審查代碼。此時,代碼還沒有正式提交到代碼庫;
2、審查人員 reviewer 收到 phabricator 自動發送的審查請求郵件;
3、審查人員 reviewer 在 Differential 中審查變更的代碼,可以選擇審覈通過,或者標註出有問題的代碼,要求開發人員 author 重新修改;
4、開發人員 author 修復bug後再次提交審查,如此反覆,直到審查通過;
5、一旦審覈人員審查通過,確認接受變更(accepted),則開發人員可以將代碼最終提交(arc commit)到代碼庫svn中;


若要支持 pre-push 工作流,代碼倉庫必須由 phabricator 自己託管。
phabricator 暫僅支持通過 SSH 協議對 SVN 進行代碼託管。
已經存在的 svn 代碼庫如果要支持 pre-push 工作流,只能將現有的 svn 代碼庫遷移(svnsync)或物理拷貝到 phabricator 託管的代碼庫才能使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章