前言
Phabricator 是 facebook 開源的一款工具,它是一套快速、可擴展、完全開源的,完整的開發軟件工具。
它內置的應用程序,可以幫助您管理任務;審查代碼;託管 Git、SVN 或 Mercurial 倉庫;構建與持續集成;審查設計;在內部聊天室進行討論等等。
要想使用 Phabricator 進行 CodeReview,我們必須要先下載 Phabricator CodeReview 工具。換句話說,以後我們在提交代碼時,要使用 arc 工具來代替 git 工具了,具體的使用方法我們在下一小節中會詳細介紹。
首先我們來看一下如何下載並安裝 Code Review 工具。
下載並安裝客戶端代碼
【在Ubuntu下使用的注意事項】
1:Ubuntu 版本: 16.0x 或以上版本
2:git版本 : 2.1xx或以上版本
3:php版本: : php7.1版本或以上
php-curl : 也要選擇php7.1以上版本
(千萬不要選擇PHP5.1可能會出問題)
{
Ubuntu低版本系統安裝的時候源可能是低版本;
安裝php-curl
sudo apt-get install php7.0-curl
//要選擇自己已安裝的php準確版本,如7.0, 5.6
執行這條命令後報錯了 unable to locate package php7.0-curl
後來發現是這個源沒有該curl模塊,所以我們採用以下方法 帆帆帆帆帆帆帆帆帆帆
sudo apt-add-repository ppa:ondrej/php
//更添加這個源
sudo apt-get update
sudo apt-get install php7.0-curl
//這時成功安裝php7.0-curl
}
Phabricator CodeReview 工具的下載和安裝非常簡單,具體操作如下:
第一步,安裝依賴工具
Phabricator 的 CodeReivew 工具 arc 依賴兩個工具,一是 PHP,二是 Git。具體安裝方法如下,在 Mac 系統下:
brew install php brew install git
在 Ubuntu 系統下:
apt install php apt install git
在 Windows 系統下:
https://blog.csdn.net/wgllovemother/article/details/102942315
第二步,從 github 上下載 arc 工具
mkdir /somewhere/pha # somewhere 是你自己指定目錄 cd /somewhere/pha git clone https://github.com/phacility/libphutil.git git clone https://github.com/phacility/arcanist.git
使用 git 下載時有時很慢,而且容易出現斷連,如果遇到這種情況,建議你直接下載 zip 包。
第三步,設置環境變量
- Mac 環境
vi ~/.bash_profile export PATH=$PATH:/somewhere/arcanist/bin/ # somewhere是你自己指定的目錄
- Ubuntu 環境
vi ~/.bashrc export PATH=$PATH:/somewhere/arcanist/bin/
設置好環境變量後,我們最後還要讓環境變量生效,執行下面語句:
source ~/.bash_profile 或 source ~/.bashrc
通過上面的步驟,我們就將 Phabricator 的 CodeReview 工具安裝好了,命令:arc help測下。
獲取項目源碼
通過 Phabricator 上託管的 git 上獲取源碼與從github上獲取源碼是類似的。我們只需要在 Phabricator 的 Repositories 中找對應的項目,並從中獲取 git 地址就可以了。
拿到 git 地址後,通過下面命令獲取項目源碼。
這裏的密碼不是賬戶密碼, 個人->設置->vcs 設置新的密碼進行拷貝 git clone http://xxxx/diffusion/1/xxxx.git
配置項目
進行到你的項目源碼目錄下,在該目錄下創建一個 .arcconfig 文件,其格式如下:
{
"phabricator.uri" : "http://yours-url/"
}
具體命令如下:
$ cd yourproject/
yourproject/ $ vim .arcconfig
{
"phabricator.uri" : "http://yours-url/"
}
安裝 Arc 工具證書
憑證可讓您進行身份驗證。您必須先在Phabricator上擁有一個帳戶,然後才能執行此步驟。
$ cd yourproject/ yourproject/ $ arc install-certificate http://yours-url/diffusion/1/project.git ...
執行上面的命令後,你需要按照說明進行操作。這步操作會將您在本地計算機上的用戶帳戶鏈接到您的Phabricator帳戶上。
提效變化進行 Review
經過上面的操作後,你現在就可以提交代碼,並進行 CodeReview吧。具體的命令如下:
- arc diff:發送變更詳情和審查請求
- arc land:推送變更(Git and Mercurial),當通過審查後使用這個命令
- arc list:顯示變更處理的情況
- arc cover:查找最有可能審查變更的人
- arc patch:給版本打補丁
- arc export:從Differential下載補丁
- arc amend:更新Git commit
- arc commit:提交變更(SVN)
- arc branch:查看Git branches更加詳細的信息
git diff
在配置了 lint 和 unit test intergration後,可以用這些命令:
- arc lint:靜態代碼檢查
- arc unit:單元測試
與其它工具交互:
- arc upload:上傳文件
- arc download:下載文件
- arc paste:創建和查看剪貼
提交代碼時字段含義
- Comment:說點什麼。可以針對某行代碼進行評論,直接點擊行號即可
- Accept Revision:接受變更,這哥們代碼寫得不錯,不需要改
- Request Changes:不行,還要改
- Resign as Reviewer:重新指定審查代碼的人
- Commandeer Revision:字面意思是將這個Revision據爲己有的意思,實際上這個時候Reviewer的身份已經變爲Owner的身份了,不能再進行Review了,但是Comment還是可以的
- Add Reviewer:添加審查人
- Add Subscribers:添加訂閱者,CC
- Abandon Revision:廢除版本。廢除後,這個版本就不需要再審覈了
- Plan Changes:計劃變更,我自己發現了一些問題或者需求有變,正在改
- Add Reviewer:添加其它審查人(除當前審查人外)