Gerrit使用簡介


1 Gerrit簡介

    Gerrit,一種免費、開放源代碼的代碼審查軟件,使用網頁界面。利用網頁瀏覽器,同一個團隊的軟件程序員,可以相互審閱彼此修改后的程序代碼,決定是否能夠提交,退回或者繼續修改。

 

 

1 注冊Gerrit

 

1.1 賬號密碼

 

    注冊Gerrit需給Gerrit管理員(yangjunyu@wingtech.com)發送郵件獲取賬號密碼。

 

 

 

    從管理員處獲取賬號密碼后,登錄Gerrithttp://192.168.42.21:8083/

 

1.1 修改名字和郵箱

 

如郵箱為xxxx@google.com,則“Full Name”填寫為xxxx:

 

注冊郵箱:

 

注冊成功后會給郵箱發送一封郵件,點擊鏈接進行驗證(如果某些瀏覽器無法打開驗證鏈接,復制到IE上打開):

 

 

1.1 添加用戶

 

linux下的用戶名須和管理員給的Gerrit賬號名相同,如果沒有,請添加新用戶:

 

root@BuildHost:~# adduser gerrit

 

 

1.1 添加ssh密鑰

備份.ssh(如果存在的話):

 

生成密鑰:

rm -rf ~/.ssh

ssh-keygen -t rsa -C "自己郵箱地址"   ###一直按回車鍵即可

 

然后公鑰添加到Gerrit

把 ~/.ssh/id_rsa.pub 內容復制好

 

粘貼到

 

1 開發人員使用

1.1 下載代碼

正確配置好郵箱和ssh公鑰后,根據Gerrit管理員給出的地址下載代碼:

如:git clone ssh://用戶名@192.168.42.21:29418/test

 

1.1 下載commit-msg腳本

【重要:使用Gerrit必須要有此腳本】

1. 拷貝腳本到本地

scp -P 29418 -p 192.168.42.21:/hooks/commit-msg .

2. 把腳本拷貝到git鈎子路徑

cp commit-msg /usr/share/git-core/templates/hooks

chmod +x /usr/share/git-core/templates/hooks/commit-msg

 

1.1 提交代碼審核

Gerrit不允許用戶直接push代碼到分支上(特別授權用戶除外),否則報錯:

 

 

 

正確的做法是所有提交都push到 HEAD:refs/for/分支名 :

格式如:git push origin HEAD:refs/for/分支名

 

 

1

 

當前處於本地分支master 

 

代碼提交到遠程分支master上,則:git push origin HEAD:refs/for/master

 

 

2

 

當前處於本地分支developer

 

 

 

代碼提交到遠程分支deleloper上,則: git push origin HEAD:refs/for/developer

1.1 添加審核者

代碼正確提交到分支 refs/for/* 后,需要登錄Gerrit界面為剛才的提交添加相應的審核者:

 

登錄Gerrithttp://192.168.19.225:8083/, 在“changes”下可以看到剛剛的提交,名稱顯示為剛剛提交所寫的注釋

 

 

點擊進入,在“Need Code-Review”下添加相應的代碼審核者(請根據自己項目情況添加指定的審核者,此處僅作演示)

如果審核通過,會收到提示郵件(Code-Review為正數,說明審核通過,但代碼未合入分支):

 

 

代碼被合入后,會收到郵件提示(說明代碼已經正確提合入到分支):

1.1 審核失敗再提交

當收到審核失敗的郵件時(Code-Review負數,需要記下Change-Id,下一步提交時會用上),需要修改代碼重新提交:

 

修改好代碼后,重新提交代碼:

【重要:代碼審核失敗后,重新提交時必須使用 git commit --amend,否則會生成新的評審任務,無法與上一次審核任務關聯】

 

【重要:注釋可以重新寫,但是其中“Change-Id”必須為上一次審核任務失敗的Change-Id,可在Gerrit或者上一步的郵件中查看得到】

 

 

 

push代碼到Gerrit

 

最后無需重復步驟“3.3 提交代碼審核”,Gerrit會自動給原來的審核者發送相應郵件

 

4 審核人員使用

 

4.1 收到審核郵件

 

當有審核任務郵件時,點擊鏈接打開Gerrit

 

4.2 查閱審核任務

打開審核任務如下:

4.3 添加其他審核者

如果需要,這里可以添加其他人員審核(需要有審核權限)

 

4.4 查看修改內容

點擊“Side-by-Side”按鈕,查看修改內容:

 

點擊“next”查閱下一項修改:

 

4.5 審核通過/失敗

點擊“Review

 

審核通過:

 

審核失敗:

 

代碼提示被blocked

 

審核失敗的任務會給提交者發送郵件,通知其修改

5 其他

5.1 常用別名設置

git config --global alias.st status 

git config --global alias.ci commit

git config --global alias.co checkout

git config --global alias.br  branch

git config --global color.ui true

git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset %C(bold blue)<%an>%Creset ---%C(yellow)%d%Creset %s %Cgreen(%cr)' --abbrev-commit"

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM