Gerrit
一個基本的Git服務器已經足以勝任許多用途了。
盡管如此,有些時候你需要精確地控制工作流。
一個實際的例子是把變更合并到關鍵的基礎設施配置代碼里。雖然我認為DevOps不應該對基礎設施代碼有不必要的規程,但是不可否認確實在某些時候它還是有用的。否則,開發者可能會對提交基礎設施的變更感到緊張,并希望更有經驗的人能一起審查代碼。
Gerrit是基于Git的代碼審查工具,它可以提供一個這種狀況下的解決方案。筒而言之,Gerrit可以讓你創建規則來允許開發者審查和批準其他開發者對代碼庫的變更。由資深的開發者審查經驗不足的開發者的變更,通常來說多雙眼睛關注代碼會帶來更好的質量。
Gerrit基于ava并在后臺使用了基于Java的Git實現。
Gerrit可以作為Java的WAR文件來下載,并且提供了一個集成創建方法。它需要依賴一個關系型數據庫,但是選擇一個基于Java的H2嵌入式數據庫就足以評估Gerrit了。
更簡單的方法是使用Dockei.來嘗試Gerrito在Docker hub上有數個Gerrit鏡像可供選擇。我們為這次評估的練習選擇了下面這個: https://hub.docker.com/r/openfrontier/gerrit/