在項(xiàng)目管理中,自動(dòng)關(guān)聯(lián)Git代碼提交,集成各大Git平臺
不再讓開發(fā)提交的代碼成為“黑洞”
在軟件開發(fā)過程中,會有一個(gè)問題和擔(dān)心,就是不知道開發(fā)人員提交的代碼質(zhì)量如何,規(guī)范怎樣。更為讓人痛苦的莫過于當(dāng)時(shí)某個(gè)功能需求改了什么代碼,根本無人知道。
今天,分享一個(gè)工具和技巧,讓代碼提交在項(xiàng)目管理中透明化、自動(dòng)化、可視化。
YesDev敏捷開發(fā)團(tuán)隊(duì)的協(xié)作工具
YesDev是一款免費(fèi)的在線協(xié)作工具,注冊即可使用,還可以創(chuàng)建和加入多個(gè)團(tuán)隊(duì),非常實(shí)用和方便。
讓Git代碼提交自動(dòng)關(guān)聯(lián)到需求、Bug和任務(wù),自動(dòng)上屏
我們先來看下Git代碼提交關(guān)聯(lián)到需求的效果。產(chǎn)品經(jīng)理提出需求后,開發(fā)人員根據(jù)產(chǎn)品需求進(jìn)行本地開發(fā)和提交代碼。根據(jù)格式提交Git代碼注釋后,自動(dòng)上屏的效果類似:

需求彈窗的Git代碼提交記錄
這是一個(gè)需求彈窗,在上面可以看到這個(gè)需求的內(nèi)容,以及在右側(cè)可以看到當(dāng)時(shí)這個(gè)需求由哪位開發(fā)人員提交了什么代碼,包括:修改了哪個(gè)代碼倉庫、哪個(gè)開發(fā)分支、修改時(shí)間和commit id,點(diǎn)擊還可以查看對應(yīng)詳細(xì)的代碼修改變更記錄。

點(diǎn)擊查看詳細(xì)的代碼修改記錄
在需求詳情頁,可以更直觀地看到代碼提交注釋自動(dòng)上屏的效果。任務(wù)和Bug,與此相似,不再贅述。

自動(dòng)上屏的Git提交注釋
另一個(gè)代碼審查的視角——按功能需求
一個(gè)需求,通常需要多名技術(shù)人員共同協(xié)作,才能一起完成。有了源代碼、任務(wù)、需求上線、接口文檔等多元化信息,我們可以在另一個(gè)角度更完善地進(jìn)行代碼審查。
基于Git代碼提交記錄(屬于核心源代碼交付部分),再結(jié)合團(tuán)隊(duì)成員在需求備注和討論區(qū)提供的接口文檔鏈接,以及任務(wù)完成情況的記錄,和需求上線的變更記錄,再結(jié)合每個(gè)需求的技術(shù)文檔、Bug修復(fù),可以更全面、更清晰地知道,當(dāng)時(shí)這個(gè)業(yè)務(wù)需求是誰做的、花了多長時(shí)間、具體需求是什么、以及遇到過哪些坑,一目了解,對于維護(hù)項(xiàng)目也更有資料參考,不用擔(dān)心人員流動(dòng)而無法接手以前的舊項(xiàng)目、舊系統(tǒng)。

一個(gè)需求的詳情頁
通過Git代碼提交自動(dòng)實(shí)現(xiàn)Bug流轉(zhuǎn)
除了寫代碼、做需求,提Bug和改Bug就是程序員和開發(fā)人員日常的另一塊主要工作了。
但有時(shí)候,開發(fā)人員改好代碼、修復(fù)Bug后,沒有及時(shí)告訴測試人員,就會導(dǎo)致Bug修復(fù)后延長了重新驗(yàn)收的時(shí)間,在溝通和協(xié)作上就會出現(xiàn)斷層和延時(shí)。
結(jié)合YesDev提供的Git代碼提交,就能在開發(fā)人員修復(fù)bug后自動(dòng)、實(shí)時(shí)、第一時(shí)間通知測試人員,并且自動(dòng)將Bug的狀態(tài)修改成【已解決】,自動(dòng)歸因?yàn)椤敬a問題】,既在細(xì)節(jié)提高了工作效率,又在溝通上更為流暢,又不需要額外使用太多工具。
來看以下的例子。
首先,測試人員創(chuàng)建一個(gè)新Bug并指派給開發(fā)人員。

一個(gè)bug例子
隨后,開發(fā)人員在本地修改代碼并修復(fù)此問題,同時(shí)按規(guī)范提交了Git代碼。

代碼修復(fù)記錄
接著,測試人員會實(shí)時(shí)收到bug已解決的反饋和郵件通知(不需要開發(fā)人員再人工告知)。

郵件通知
與此同時(shí),在釘釘群/企業(yè)微信群/飛書群等,項(xiàng)目干系人也可以同步接收收到bugfix的周知和通知,方便關(guān)注這個(gè)bug的其他成員第一時(shí)間同步收到這個(gè)消息。

釘釘群通知
不僅如此,系統(tǒng)還會智能地將Bug的狀態(tài)改為【已解決】,同時(shí)把問題歸因?yàn)楦臑椤敬a錯(cuò)誤】。
輕松集成現(xiàn)有的Git代碼托管平臺
通過Webhooks,可以讓YesDev項(xiàng)目協(xié)作工具與你團(tuán)隊(duì)使用的Git版本管理平臺進(jìn)行集成,進(jìn)行及時(shí)、自動(dòng)化的對接,提升工作效率。
目前,YesDev已經(jīng)支持:
Gitlab
Gitee碼云
Gitee企業(yè)版
Codeup
Github
TFS
等Git的WebHook配置。配置方式如下。
登錄YesDev后,點(diǎn)擊左上角圖標(biāo)-切換團(tuán)隊(duì)-點(diǎn)擊團(tuán)隊(duì)名稱,獲取你團(tuán)隊(duì)在YesDev的WebHook回調(diào)地址。

獲取你的webhook地址
例如,在Gitlab為你的代碼倉庫添加Webhook,類似:

Gitlab的webhook配置
在Codeup云效添加Webhook的方法如下。其他Git平臺類似,如果找不到,請先確保有倉庫的管理員權(quán)限。

云效的webhook配置
Git提交注釋規(guī)范與格式
目前,YesDev推薦的注釋規(guī)范,主要分為三類:需求注釋規(guī)范、Bug注釋規(guī)范、任務(wù)注釋規(guī)范。
需求注釋規(guī)范:用于實(shí)現(xiàn)功能類的開發(fā)所進(jìn)行的提交
Bug注釋規(guī)范:用于進(jìn)行bugfixed、缺陷修復(fù)、故障處理等的代碼修改和提交
任務(wù)注釋規(guī)范:用于進(jìn)行開發(fā)調(diào)試、和任務(wù)關(guān)聯(lián)的代碼修改和提交
在開發(fā)和實(shí)現(xiàn)產(chǎn)品功能時(shí),通過統(tǒng)一的注釋規(guī)范,可以和YesDev的需求進(jìn)行關(guān)聯(lián)。需要遵循以下注釋提交規(guī)范。
需求注釋格式是:
需求#{需求ID}:開發(fā)人員填寫的注釋內(nèi)容其中,{需求ID}對應(yīng)YesDev的需求ID,注釋示例:
需求#666:首頁靜態(tài)頁面開發(fā)溫馨提示,比原來的git注釋,只是在前面多了關(guān)聯(lián)的需求ID,很是方便。
另外,Bug和任務(wù)的規(guī)范,與需求類似,不再展開。
開發(fā)人員的代碼提交記錄和分類統(tǒng)計(jì)
有了git代碼提交規(guī)范后,就可以在YesDev統(tǒng)計(jì)每個(gè)有的代碼提交記錄。

在Git,也可以看到更專業(yè)、更有參考價(jià)值的提交記錄??梢灾烂恳淮未a修改,背后的目的和作用是什么。

