摘要:持續代碼提交是實作持續集成的必要條件,
本文分享自華為云社區《云上開發如何實作持續代碼提交》,作者:華為云PaaS服務小智,
什么是持續代碼提交
持續代碼提交就是頻繁向主干提交代碼,讓主干隨時保持都是最新的可用狀態,持續代碼提交是實作持續集成的必要條件,想要做到持續集成,前提是有代碼可以集成,通過經常性的提交代碼,可以避免大量代碼堆積在工程師本地,造成本地的開發分支和團隊主干分支差異過大,導致最后無法合并提交,
代碼提交的方法
常用的開發模式有主干開發和分支開發兩種,當團隊成員較多的時候,通常是分支—主干開發模式,為了保障團隊的高效協作,團隊通常會約定一個規則進行代碼提交,下面步驟可供參考,
1 創建開發分支
團隊成員在進行代碼修改之前,首先創建一個自己的開發分支,然后從主干分支檢出最新版本的成功代碼到開發分支,
2 本地修改代碼
在本地進行代碼修改,包括新功能開發、變更實作、缺陷修復等所有會產生代碼修改的作業,
3 本地驗證
代碼修改后,在本地進行編譯構建和功能驗證,保證修改的代碼質量,以及確認修改是否實作了預期的功能,如果功能驗證有問題,還需要繼續修改代碼,然后再驗證,直到成功為止,需要注意的是,要控制這個程序的時間,不要過長,一般不超過一天,通常每人每天至少要向主干提交一次代碼,這就需要在拆分任務的時候要保證任務的顆粒度不要過大,盡可能小,任務的時間單位通常是小時,最多不要超過8小時,這也和每人每天至少提交一次代碼的原則相呼應,
4 合入開發分支
本地確認沒有問題后,可以將代碼合入開發分支,并觸發分支門禁構建,通過之后進行代碼審核再合入,確保代碼質量達標,需要注意的是,在本地修改代碼程序中,主干分支可能會有變化,其他成員會提交代碼到主干,所以需要先將開發分支和主干分支進行同步,確保是最新代碼,然后再進行合并,
5 開發分支驗證
代碼合并到開發分之后,對開發分支進行功能驗證,
6 合入團隊主干分支
在開發分支驗證無誤后,此時代碼可以合入到主干分支,觸發主干門禁構建,門禁構建通過之后,再通過代碼評審合入到主干,同時進行功能驗證,
這樣一次代碼修改和提交的程序就完成了,這時候可能是修復了缺陷、開發了新功能或者完成了一次變更,在下一次開始作業前還是相同的流程,重復①~⑥這幾個程序,
在上面的步驟中,我們可以看到一次代碼提交至少有三次編譯、兩次門禁檢查、兩次代碼審核、三次功能驗證,極大的保證了代碼的質量和功能的正確性,同時,盡早頻繁提交代碼,還可以盡早的發現問題,及時修正,避免到了開發后期,修復的成本大大提高,這也是順應了敏捷的小步快跑,及時反饋的原則,
云上開發實踐
我們以華為云 Dev Cloud 為例,來看一下具體操作,通過華為云DevCloud的代碼托管、代碼檢查、流水線服務可以完成持續代碼提交操作,
1、云上開發,首先要將代碼放置在云上,可以將本地的代碼匯入到DevCloud中,或者直接在DevCloud創建代碼包,然后代碼托管服務中創建開發分支,通常是基于master分支,
2、然后是代碼修改,可以下載到本地進行修改,或者使用CloudIDE進行云端編程,
3、修改完成后,在本地或者云端進行構建驗證,成功后就可以啟動開發分支流水線將代碼提交到開發分支,
4、流水線執行完成后表示開發分支合并成功,接下來可以申請將代碼合入到主干分支,
注意選擇正確的分支以及評審人,評審人通常還負責代碼評審的作業,
5、合并審批通過后,就可以啟動主干流水線,進行構建和驗證,
至此,就完成了一次代碼修改提交到主干的程序,后續可以根據專案和業務的要求繼續進行測驗和部署,
點擊關注,第一時間了解華為云新鮮技術~
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/502579.html
標籤:其他
