代碼評審工具

被分配個調研任務,代碼評審工具html

調研任務

任務由來

目前應用組代碼審覈工做依賴於bug解決難易度,長時間不能解決的問題纔會引入他人聯合查找緣由,不少bug緣由是因爲人員編程習慣、熟練度的不一樣致使,此種方式沒法保障代碼質量,而每週騰出固定時間進行集體代碼審覈不但影響開發進度,並且每次都要過幾乎所有代碼或者對比以前提交的每一個版本代碼,再或者由編寫者描述修改位置、內容,審覈者審覈,效率低且容易遺漏代碼變動點,發現問題後還須要與代碼編寫者溝通問題代碼位置、調整建議,此過程還須要手動記錄,否則兩方都很容易遺忘,影響問題代碼修正。java

基於以上緣由,急需依賴於代碼版本管理庫的代碼審覈平臺,能夠在線針對代碼編寫人員每次提交進行迭代代碼審覈,無需每次閱讀完整代碼,且支持在線批註代碼,記錄問題代碼的同時,方便代碼編寫者查看他人批註的問題代碼,修改後也便於批註者確認代碼修正,甚至能夠進一步加固主線代碼可用性,設定未審覈代碼不能提交至主線,相信其它組也用得上。linux

代碼審覈平臺一年前李工帶人作過調研,提出過四五個,咱們組本身搭建驗證過多數,都很難達到預期效果,只有gerrit平臺沒有搭建成功試用,後來王工安排井工嘗試過搭建,後因開發進度問題沒有繼續,建議優先嚐試gerrit,有其餘合適的平臺也能夠進行搭建試用,試用工做咱們組能夠進行,須要代碼版本庫對接也能夠對接北京git服務器。nginx

隨着和視X平臺量產啓動,不論對終端仍是平臺的開發都是個挑戰,一方面要保障平臺的穩定負載,另外一方面要保障終端老化運行的穩定性,在功能邏輯完善的前提下,代碼邏輯質量這些細節之處就顯得尤其重要,因此還請儘快解決啊!git

另,建議順便搭建試用相似redmine之類的完整項目管理平臺,能夠節省相關項目文檔修改、傳遞、同步、整理上的時間,實現看板、任務統計管理在線化,任務變動可追溯,增強人員對項目進度信息的瞭解,項目收尾階段導出相關數據結合現有WBS表格樣式做爲項目歸檔使用。程序員

分析

看完文字,直覺就是在說要用Github,又想到Github如今支持私有庫github

買現成的企業版確定不如本身搭建一個服務來得方便,看來是要我搭建一個gerritweb

一個疑問:Github上的評論系統不是挺好的麼?難道不適合評審代碼?編程

現有的git服務是什麼?是搭建了一個Gitlab麼?centos

實踐

搭建gerrit

參考1

調研兩個代碼評審工具:https://blog.csdn.net/No__names/article/details/79872395

代碼評審在今天的軟件行業變得愈來愈重要,選擇並熟悉一款優秀高效的代碼評審工具也是十分有必要的。
現有代碼評審工具不少,優秀的也很多,簡單對兩款代碼評審工具進行了瞭解調研。

Gerrit   

Gerrit是一種免費、開放源代碼的代碼審查軟件,使用網頁界面。利用網頁瀏覽器,同一個團隊的軟件程序員,能夠相互審閱彼此修改後的程序代碼,決定是否可以提交,退回或者繼續修改。它使用Git做爲底層版本控制系統。它分支自Rietveld,做者爲Google公司的Shawn Pearce,原先是爲了管理Android計劃而產生。

Gerrit的優勢:Gerrit經過容許任何受權用戶將更改提交給主Git存儲庫來簡化基於Git的項目維護,而不是要求全部已批准的更改由項目維護者手動合併。這在必定程度上提升了項目更新的靈活度,減輕了項目維護管理者的負擔。    

Gerrit的缺點:不過上述作法的缺點也比較明顯,在提升項目更新的靈活度的同時帶來了風險,由於任何曾經獲取過受權的人都有權限更改項目代碼,這將容易致使項目代碼被頻繁隨意更改。

Barkeep

Barkeep的優勢:將會把對Git上代碼倉庫進行的修改經過郵件的方式通知給用戶,便於用戶隨時跟蹤項目進度。同時它設置了相關語法語句的高亮顯示,對於使用者的高效閱讀是頗有幫助的。除此以外它還有的優勢有:乾淨的UI,簡單容易的使用方法,幽默的語言等。

Barkeep的缺點:正如Barkeep團隊所說,每一個軟件系統都有它的缺點,Barkeep也不例外,對於Barkeep而言,它彷佛不如Gerrit靈活。

關於碼雲

企業版套餐常見問題:https://gitee.com/help/articles/4203#article-header0

5人小團隊免費彷佛不錯

關於Github

做爲程序員,不會用Github應該是不合格的。

至於Github訪問速度慢,FQ就是了。

關於Gitlab

相信不少技術人員都知道有個github造福開發人員的git(分佈式版本管理工具)代碼管理社區,能夠說如今git是開發人員的必備技能之一

本週有個朋友公司須要一個相似github的代碼倉庫管理系統,本人選擇了gitlab(沒有什麼對比了,好像目前就gitlab最好了而且維護也不錯了),下面就來講說搭建私有github系統的過程

關於Gitbook

經過 GitBook 開源框架和 GitHub 私有化部署 Wiki 文檔:https://blog.csdn.net/java1573/article/details/78851270

關於Gerrit

官網:https://www.gerritcodereview.com

在Linux上安裝Gerrit的快速入門:https://gerrit-documentation.storage.googleapis.com/Documentation/2.16.5/linux-quickstart.html

Gerrit是一個創建在Git版本控制系統之上,基於Web的代碼審查工具。

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

代碼審覈(Code Review)是軟件研發質量保障機制中很是重要的一環,但在實際項目執行過程當中,卻由於種種緣由被Delay甚至是忽略。在實踐中,免費、開放源代碼的代碼審查軟件Gerrit是一個很好的選擇。

它在傳統的源碼管理協做流程中強制性引入代碼審覈機制,經過人工代碼審覈和自動化代碼驗證過程,將不符合要求的代碼屏蔽在代碼庫以外,確保核心代碼多人校驗、多人互備和自動化構建覈驗。

Gerrit適用性:幾乎任何須要正式發佈的項目都應當使用Gerrit來進行代碼審查,若是Team中有新人,必須使用Gerrit確保代碼質量。

Gerrit上進行代碼審查,確認入庫

Verify:工程裏面接入了jenkins自動verify,結果可在上圖紅框內展現verify結果。

review代碼,提交入庫。

【Gerrit】Linux + Gerrit + Nginx + gitweb安裝全過程:http://lipeng1667.github.io/2017/01/17/build-gerrit-with-nginx/#開發環境

Gerrit安裝和使用說明:http://www.cnblogs.com/smallcoderhujin/p/3937641.html

Gerrit代碼審覈服務器搭建全過程:http://www.javashuo.com/article/p-qtxgjzgd-a.html

centos部署配置gerrit+gitlab實現代碼的review與自動同步:http://blog.51cto.com/nanfeibobo/2089513

關於Git

搭建Git服務器:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000

Git本地服務器搭建及使用:http://www.javashuo.com/article/p-beycepfw-eu.html

搭建屬於你本身的 Git 服務器:https://linux.cn/article-9858-1.html

相關文章
相關標籤/搜索