GitFlow內部規(guī)范

http://Git工作流

圖片.png

主分支:

  • 命名: master-xxx
  • 意義: 是發(fā)布到線上的代碼版本,在主分支上會打上對應的版本號標簽
  • 維護者: 項目的主程、軟件組長、專門維護線上版本人員
  • 數量: 理論上只有一個,如果該項目面向多個渠道獨立發(fā)布的,那就創(chuàng)建多個master

develop分支

  • 命名: develop-xxx
  • 意義: 團隊開發(fā)合并和fork主要以此分支為準,開發(fā)過程中需要經常對develop進行合并
  • 維護者: 如果有代碼評審機制,那么在發(fā)送develop合并feature分支時,應該做代碼評審。 維護者是整個開發(fā)團隊。
  • 數量: 與master分支對應

feature分支

  • 命名: ft-xxx
  • 意義: 團隊成員開發(fā)具體需求時,需要從develop fork出一個特性分支,專門用來開發(fā)對應功能需求。 如果功能完成,測試人員可以針對該分支進行單獨的功能測試,在禪道的任務中需要添加 的開發(fā)分支 就是這個特性分支
  • 維護者: 當前開發(fā)此功能的研發(fā)人員

realease分支:

  • 命名: release-xxx-vxxx
  • 意義: 當一個迭代需要完成的功能已經合并到develop, 確定要對這些功能進行發(fā)布,從develop中fork出realease分支,中間xxx與master和develop的后綴對應,后面是版本號。
  • 維護者:研發(fā)團隊
  • 使用: 內網測試是建立在此分支上的,release分支創(chuàng)建完成后不再接受功能級別的合并,僅支持測試出現的bug修復的合并。當測試完全通過后,與master合并,建立版本tag,準備發(fā)布。
  • 合并規(guī)則: fix分支、feature分支、develop分支

hotfix分支:

  • 命名:fix-{bug編號}
  • 意義:用于對線上的bug的修復或測試版本的bug修復
  • 維護:對應開發(fā)人員
  • 使用:bug的修復可以在feature分支中進行,如果是迭代周期內的bug推薦使用feature修復,并與develp和對應的release分支合并。如果是線上的bug,那就從master分支fork出release分支和fix分支,使用fix進行修復,測試通過后,fix分支可以在之后的時間刪除

例子

假設haier項目中增加一個添加菜單功能,版本號為0.1,禪道bug編號為4192.

1、主分支:

  • 命名為master-haier
  1. 有bug:見5.1
  2. 無bug:發(fā)布線上。

2、 develop分支:

  • 從master-haier中繼承一個分支命名為:develop-haier
  • 每次master-haier有更新,都合并到:develop-haier分支。

3、 feature分支:

  • 從develop-haier中fork一個分支命名:ft-addMenu。
  • 添加菜單功能開發(fā)完成后,測試人員對ft-addMenu分支進行測試。
  1. 有bug:見5.3
  2. 無bug:合并到develop-haier,刪除ft-addMenu分支。

4、 realease分支:

  • 在ft-addMenu等功能合并到develop-haier后,從develop-haier中fork一個分支,命名為:realease-haier-v0.1。
  • 內網測試在此分支上進行。
  1. 有bug:見5.2
  2. 無bug:合并到master-haier上,刪除realease-haier-v0.1分支。

5、 hotfix分支:

  • 命名規(guī)則:fix-4192。

5.1 線上bug:

  • master-haier中fork出realease-haier-v0.1和fix-4192分支,fix-4192修復后合并至realease-haier-v0.1,進行內網測試。內網測試通過后,realease-haier-v0.1合并到master-haier上,發(fā)布線上。

5.2 內網測試bug:

  • 建立fix-4192分支,修復后合并到realease-haier-v0.1。

5.3 feature bug:

  • 在ft-haier上建立分支fix-4192分支,修復后合并至ft-haier分支。

開發(fā)記錄

項目代碼中建立gitbranch.md 文件,用來記錄每次人員開發(fā)對分支的使用,特別的feature分支,需要經常更新

## master分支:
- master-main : 云平臺軟件的主分支


## develop分支:
- develop: 云平臺軟件的主開發(fā)分支


## feature分支:
- ft-wall-rotateinfo: xxx 墻體旋轉信息與ruler沖突


?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Git 倉庫申請流程 1. 開發(fā)主管向Git 管理員提交Git 倉庫申請【郵件:發(fā)送給Git 管理員,抄送給項目經...
    騷包霸天虎閱讀 2,233評論 0 0
  • Git 規(guī)范 所有使用了本規(guī)范的項目,必須嚴格規(guī)范操作,否則不予以合并代碼、提測、打包上線等后續(xù)操作。 基本要求 ...
    zgsddzwj閱讀 14,272評論 1 14
  • 轉載 GIT工作流簡介 功能驅動開發(fā) "功能驅動式開發(fā)"(Feature-driven development,簡...
    張志_koen_zhang閱讀 14,882評論 1 6
  • 多種多樣的工作流使得在項目中實施Git時變得難以選擇。這份教程提供了一個出發(fā)點,調查企業(yè)團隊最常見的Git工作流。...
    JSErik閱讀 4,612評論 2 8
  • 文|萌 用最好的耐心對孩子 今天一天帶孩子,她哭了很多次,我也因為她老是哭而發(fā)火,自己內心知道要耐心點耐心點,但是...
    萌愛佑佑閱讀 249評論 0 0

友情鏈接更多精彩內容