由於維基媒體(Wikimedia)原本使用的程式碼審查系統Gerrit,受到開發人員以及志工社群諸多抱怨,因此維基媒體組成工作組,從2020年9月評估尋求另一個程式碼審查解決方案,而現在調查工作告一段落,也完成了初步的測試,工作組決定將Gerrit程式碼儲存庫移動到GitLab上,執行程式碼審查的工作,官方提到,之所以沒有選GitHub,是因為不符合維基媒體對資料控制以及隱私政策等需求。

從2012以來,維基媒體一直使用Gerrit作為程式碼儲存庫,Gerrit是一個開源的程式碼審查軟體,其建立在版本控制系統Git之上,透過網頁介面,讓開發者可以互相審閱修改的程式碼,以決定提交、退回還是繼續修改。Gerrit最初是Google為了要管理Android專案而打造,後來經分支並整合其他功能,成為現在的Gerrit,目前有許多知名組織和專案都在使用Gerrit,包括Eclipse基金會、Go、LibreOffice以及OpenStack等。

維基媒體官方提到,過去兩年他們對開發人員做了滿意度調查,發現開發人員普遍不滿意程式碼審查系統Gerrit,而且志工社群不滿意的程度更是明顯,因此在這個眾人對程式碼審查系統的不滿,以及內部開始檢視CI工具的機會,他們決定認真重新檢視使用的程式碼審查系統。

工作組認為,雖然Gerrit在工作流程上提供了許多方便性,但在介面卻存在可用性缺陷,而且其工作流程和目前主流慣例不同,而這也增加了社群成員進入的障礙,並且降低維基媒體基金會員工入職的效率。

由於Gerrit太難用,以至於維基媒體中的許多團隊,另外選擇在自己喜歡的系統上建構專案,工作組指出,維基媒體的內部團隊,已經在GitHub上建立了152個專案,而研究團隊也有127個,官方表示,許多證據都指出,Gerrit的存在不是促進發展,反而減緩組織發展的速度,因此他們必須解決Gerrit可用性的問題。

之所以沒辦法在Gerrit中解決這個問題,官方提到,Gerrit缺乏多站點功能,而且升級的文件也不足,因為維基媒體使用Gerrit的案例很特殊,與其他大型企業的用法完全不同,因此很難尋找相關的資源。因此維基媒體決定另尋解決方案,而發布工程團隊看上了GitLab,因為GitLab能夠自我託管,除了與維基媒體其他部署工具的基礎設施類似之外,也降低了部署在第三方所帶來資料隱私安全疑慮。

維基媒體決定使用GitLab免費的社群版,而這也是其他開源軟體,像是Debian,GNOME和KDE等專案使用GitLab的模式,而不考慮使用GitHub的原因,是因為GitHub不是自由且非自託管軟體,而且GitHub幾乎不提供用戶元資料控制權,對備份和資料完整性檢查的控制權很小等諸多原因。相反地,GitLab提供MIT授權許可的社群版本,而這符合維基媒體基金會開源與自由的指導原則。

 

報名台灣唯一超規格資安盛會

 

熱門新聞


Advertisement