源代码提交SOP(Git版)
一、原則
1、在維護(hù)公共基類、工具類和二方庫(kù)等可能影響到其他團(tuán)隊(duì)成員的代碼之前,必須同其他團(tuán)隊(duì)成員討論,達(dá)成共識(shí)后方可進(jìn)行維護(hù)。
2、嚴(yán)格遵守源碼簽入規(guī)范,有助于發(fā)現(xiàn)代碼漏洞,降低代碼合并風(fēng)險(xiǎn),降低遠(yuǎn)程倉(cāng)庫(kù)代碼的出錯(cuò)概率,請(qǐng)務(wù)必細(xì)心、審慎,不要因?yàn)闀r(shí)間緊就跳過流程步驟。在保證質(zhì)量的前提下,進(jìn)度才有意義。
二、六步提交法
1、開始編碼前,從遠(yuǎn)程倉(cāng)庫(kù)pull最近成功構(gòu)建的代碼(有助于減少代碼合并沖突)。
2、編寫功能代碼和對(duì)應(yīng)的單元測(cè)試(若無(wú)特殊情況工具類和二方庫(kù)必寫單元測(cè)試,業(yè)務(wù)代碼可自行判斷)。
3、本地構(gòu)建
1)編譯代碼、執(zhí)行本次commit對(duì)應(yīng)的單元測(cè)試、運(yùn)行代碼,確保單元測(cè)試通過,程序運(yùn)行正常,功能滿足需求;
2)檢查代碼是否符合編碼規(guī)范(建議使用靜態(tài)代碼檢查工具自動(dòng)檢查);
3)執(zhí)行commit預(yù)操作,逐行比對(duì)每個(gè)改動(dòng)點(diǎn),檢查代碼邏輯是否符合編碼意圖,注釋是否遺漏;
4)填寫commit信息,注意寫明分支名稱,本次提交關(guān)聯(lián)的任務(wù)或者Bug編號(hào);若有多個(gè)內(nèi)容,應(yīng)分點(diǎn)說明。建議完成獨(dú)立的任務(wù)或者修復(fù)Bug就commit,盡量避免一個(gè)任務(wù)多次commit或者一次commit中包含多個(gè)任務(wù)。
提交信息樣例1:
develop_3.0:1、[TASK QZA-339]Tyson WS Clinet 接入;2、jserver-parent增加ws client依賴包;
提交信息樣例2:
master:1、[BUG QZA-433]足球-重要Tab增加本地緩存;
5)確認(rèn)commit;
4、二次構(gòu)建
1)從遠(yuǎn)程倉(cāng)庫(kù)pull最新代碼到本地;若沒有代碼更新,可跳過步驟4;
2)若出現(xiàn)沖突,需謹(jǐn)慎合并代碼;若不理解沖突代碼,可叫上代碼作者一起合并;
3)編譯代碼、執(zhí)行本次commit對(duì)應(yīng)的單元測(cè)試、運(yùn)行代碼,確保單元測(cè)試通過,程序運(yùn)行正常,功能滿足需求;
4)再次commit,比對(duì)改動(dòng)點(diǎn),填寫commit信息;
5、push代碼。
6、提交代碼自動(dòng)化構(gòu)建(若有)
1)自動(dòng)化工具監(jiān)聽代碼提交,自動(dòng)構(gòu)建代碼,執(zhí)行單元測(cè)試,若構(gòu)建失敗或者單元測(cè)試執(zhí)行失敗,發(fā)消息通知團(tuán)隊(duì);
2)依據(jù)“立即暫停原則”團(tuán)隊(duì)收到失敗通知后,暫停新代碼push,也不允許pull代碼,直到接收到構(gòu)建成功通知;問題代碼作者需立即解決問題,重新提交。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的源代码提交SOP(Git版)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 记一次 .NET 某消防物联网 后台服务
- 下一篇: .NET6之MiniAPI(七):中间件