日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

git项目根据不同需求进行独立开发

發(fā)布時間:2025/3/15 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git项目根据不同需求进行独立开发 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目前所在公司開發(fā)的系統(tǒng)為一個基礎(chǔ)版本(通用版)包含了行業(yè)內(nèi)一些基礎(chǔ)功能實現(xiàn),后期根據(jù)不同廠家進(jìn)行定制版的開發(fā),考慮獨立項目的話代碼維護(hù)不太方便,并且如果通用版本有變動的話,其他定制版本也都需要進(jìn)行變動。

gitflow工作流

公司之前采用svn進(jìn)行維護(hù)代碼,最近才開始進(jìn)行轉(zhuǎn)變到用git 進(jìn)行維護(hù),在學(xué)習(xí)的過程中對比了一番最終選擇采用gitflow工作流進(jìn)行管控, 具體介紹如下:

master分支:主分支,可隨時交付給用戶使用的版本

dev分支:開發(fā)分支,項目組內(nèi)用于開發(fā)的分支,并且保證該分支代碼是可運行

feature分支:功能分支,項目中開發(fā)新需求或者修改bug都在此分支上進(jìn)行。

release分支:測試分支,開發(fā)完成之后,基于dev創(chuàng)建該分支

hotfix分支:bug修復(fù)分支,用于修復(fù)bug,發(fā)現(xiàn)bug創(chuàng)建此分支進(jìn)行修復(fù),基于release或者master分支創(chuàng)建

由于現(xiàn)在處于開發(fā)階段故現(xiàn)在對分支的維護(hù)方面沒有那么完善,而且公司內(nèi)部沒有測試人員,現(xiàn)在的測試流程都是寫完代碼內(nèi)部自己進(jìn)行測試,現(xiàn)在進(jìn)行開發(fā)的時候一般都是基于dev分支創(chuàng)建feature分支:

創(chuàng)建feature分支以及合并方案

  • 當(dāng)前處于dev分支或者release分支,基于dev或者release創(chuàng)建新分支

  • 創(chuàng)建新功能分支并且切換到該分支,當(dāng)該功能開發(fā)完畢之后,如果該功能開發(fā)周期較長,每天從dev分支合并到功能分支上,避免跟dev分支差異較大

  • 當(dāng)功能開發(fā)完成合并到dev或者release分支當(dāng)中,完成之后刪除本地分支,避免本地分支過多,分不清功能是否合并。

創(chuàng)建release分支以及合并方案

  • 當(dāng)前處于dev分支當(dāng)中,基于dev分支創(chuàng)建release分支
  • 創(chuàng)建該分支之后,進(jìn)行打包發(fā)布測試,如果測試當(dāng)中發(fā)現(xiàn)bug,創(chuàng)建hotfix分支,進(jìn)行修復(fù)bug,創(chuàng)建hotfix分支主要想的是多人開發(fā)過程中,發(fā)現(xiàn)那個模塊誰負(fù)責(zé),誰去修改bug
  • 當(dāng)該分支測試完成之后合并到master和dev分支當(dāng)中

創(chuàng)建hotfix分支以及合并方案

  • 當(dāng)前處于release分支或者master分支當(dāng)中
  • 當(dāng)release分支發(fā)現(xiàn)bug之后,根據(jù)release分支創(chuàng)建該分支,進(jìn)行修復(fù)bug。
  • 該分支修改完成之后如果是release的bug合并到release分支就可,如果是基于master分支創(chuàng)建的還需要合并到dev分支當(dāng)中

命名規(guī)則

分支命名方式采用如下規(guī)則例如: add_user_0302add:代表工作類型user代表具體功能模塊:user:具體的功能模塊0302:分支創(chuàng)建時間 復(fù)制代碼

git注釋提交規(guī)范

注釋提交采用如下規(guī)則例如:[修復(fù)bug]:bug號1.修復(fù)的具體功能 復(fù)制代碼

基于上述規(guī)范根據(jù)我們項目組的情況,創(chuàng)建了如下三個版本的分支結(jié)構(gòu)如下:

  • master分支
  • master-A分支
  • master-B分支

master分支

基礎(chǔ)版本分支,開發(fā)一些通用功能(目前所有工作都是在此版本開發(fā))

master-A分支

基于通用版本生成的一個分支版本,根據(jù)A客戶提出的新需求進(jìn)行客制化的開發(fā)

master-B分支

基于通用版本生成的分支版本,根據(jù)B客戶提出的新需求進(jìn)行客制化開發(fā)

master分支維護(hù)

master版本維護(hù)分如以下:devrelease/hotfix/feature/ 復(fù)制代碼

master-A/master-B維護(hù)

master-A或者master-B版本維護(hù)分支如下:dev-Arelease-A/hotfix-A/feature-A/ 復(fù)制代碼

基礎(chǔ)版本同步方案

當(dāng)基礎(chǔ)版本有新功能開發(fā),或者是修復(fù)之前遺留的bug,開發(fā)完成之后,合并到其他master-A或者master-B分支當(dāng)中,避免重復(fù)開發(fā)帶來的時間成本。

開發(fā)注意事項

根據(jù)不同的業(yè)務(wù)創(chuàng)建分支的時候選擇創(chuàng)建不同的分支,例如master分支在進(jìn)行創(chuàng)建功能分支的時候應(yīng)該是:

  • feature/add_user_0302

master-A創(chuàng)建功能分支應(yīng)該是:

  • feature-A/add_user_0302

注:此方案目前只是一個規(guī)劃,如果您有更好的方案還請留言告知

轉(zhuǎn)載于:https://juejin.im/post/5c79cfa5e51d4506e27fe61f

總結(jié)

以上是生活随笔為你收集整理的git项目根据不同需求进行独立开发的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。