Gerrit 工作流程

簡介

       Android 開源項目在 Git 的使用上有兩個重要的創新,一個是爲多版本庫協同而引入的 repo,另外一個重要的創新就是 Gerrit —— 代碼審覈服務器。Gerrit 爲 Git 引入的代碼審覈是強制性的,就是說除非特別的授權設置,向 Git 版本庫的推送(Push)必須要經過 Gerrit 服務器,修訂必須經過代碼審覈的一套工作流之後,纔可能經批准並納入正式代碼庫中。

工作流程

      開發者的代碼通過 git 命令(或 repo 封裝)推送到 Gerrit 管理下的 Git 版本庫,推送的提交轉化爲一個代碼審覈任務,審覈任務可以通過 refs/changes/<change-id> 下的引用訪問到。代碼審覈者可以通過 Web 界面查看審覈任務、代碼變更,通過 Web 界面做出通過代碼審覈或者打回等決定。測試者也可以通過 refs/changes/<change-id> 引用獲取(fetch)修訂對其進行測試,如果測試通過就可以將該評審任務設置爲校驗通過(verified)。最後經過了審覈和校驗的修訂可以通過 Gerrit 界面中提交動作合併到版本庫對應的分支中。 在 Android 項目的網站的代碼貢獻流程圖更爲詳細的介紹了 Gerrit 代碼審覈服務器的工作流程。 gerrit工作流程如下圖所示:

相關操作

提交代碼

  • 修改代碼
  • git status
  • git add .
  • git commit
  • git push xxx

評審修改

  • 修改代碼
  • git status
  • git add .
  • git commit --amend
  • git push xxx

衝突處理

  • git checkout master
  • git pull origin master
  • git checkout TOPIC-BRANCH
  • git rebase -i master
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章