簡明版GIT分支管理流程

背景

當前公司使用的是gitlab做代碼版本控制桂对,由于目前部門已經(jīng)有了一套git分支管理流程,但不規(guī)范鸠匀,也沒有考慮多版本并行開發(fā)及持續(xù)部署的情況蕉斜,所以需要重新整理一下。目標是在盡量少的改動下實施好分支管理來滿足逐步增長的業(yè)務(wù)需求缀棍。

分支

由于持續(xù)集成已經(jīng)針對不同分支進行集成部署宅此,為了不改變持續(xù)集成的腳本,規(guī)劃三條長久分支

  • master: 生產(chǎn)環(huán)境分支睦柴,保護分支诽凌,只有團隊管理者有權(quán)限合并毡熏,其他人提交需要提交PR坦敌。
  • release: 測試環(huán)境分支,保護分支痢法,只有測試人員有權(quán)限合并狱窘,其他人提交需要提交PR。
  • dev: 開發(fā)環(huán)境分支

規(guī)劃以下臨時分支

  • feature: 功能分支财搁,針對一些比較獨立大的功能可以拉取功能分支蘸炸,測試上線完成后需要刪除。
  • hotfix: bug修復(fù)分支尖奔,從master中拉取的分支搭儒,修正bug上線后刪除穷当。

開發(fā)流程

開發(fā)人員在dev分支進行開發(fā),部分較大的feature開發(fā)需要單獨拉取分支進行開發(fā)淹禾。原則上提交到dev的代碼當天都可以編譯通過馁菜,需要設(shè)立一個隔夜發(fā)布(Nightly Deploy)的持續(xù)集成的定時任務(wù)。

測試流程

開發(fā)人員全部開發(fā)完成后铃岔,需要在gitlab上提交一個pull request汪疮,由測試人員進行review的pr進行merge。后面通過持續(xù)集成進行部署

生產(chǎn)流程

同測試流程毁习,合并到master后由運維同事進行生產(chǎn)部署智嚷。驗證完成后需要打tag,命名規(guī)則是tag-[version]-[date]纺且。

功能分支開發(fā)流程

本地拉取分支以后做功能分支開發(fā)盏道,也可以推送到遠程功能分支,需要開發(fā)完成后再合并回到dev隆檀,然后刪除feature分支

hotfix流程

當生產(chǎn)環(huán)境發(fā)現(xiàn)問題的時候摇天,可以從master中拉取hotfix分支。為了減低影響當前開發(fā)的情況恐仑,需要額外新建一個持續(xù)集成任務(wù)泉坐,專門針對hotfix分支部署測試環(huán)境。hotfix分支需要分情況進行處理

  • 當目前開發(fā)版本暫時沒有部署到測試環(huán)境裳仆,可以直接把hotfix分支部署進行驗證即可
  • 當目前開發(fā)版本已經(jīng)部署到測試環(huán)境腕让,需要評估一下其他中間件的修改(如數(shù)據(jù)庫修改)是否會影響bug功能的回歸。如果會歧斟,建議把bug合并到當前版本一起上線纯丸,如果不會,測試環(huán)境優(yōu)先部署hotfix版本進行部署静袖。

測試完成后觉鼻,按生產(chǎn)流程步驟進行操作即可,上線回歸完成后需要刪除hotfix分支

多版本開發(fā)流程

理論上最多兩個版本并行開發(fā)队橙,同時如果兩個版本能否并行開發(fā)也要做好前期的分析工作坠陈,比如是否前后有依賴,數(shù)據(jù)庫的增刪查改是否會相互影響等捐康。在評估沒有問題之后仇矾,再規(guī)劃保存代碼的分支如下

  • dev: 先行版本的開發(fā)分支
  • dev-after: 后行版本的開發(fā)分支
    同時新建立持續(xù)集成的任務(wù),專門針對dev-after分支開發(fā)環(huán)境部署解总。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末贮匕,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子花枫,更是在濱河造成了極大的恐慌刻盐,老刑警劉巖掏膏,帶你破解...
    沈念sama閱讀 222,807評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異敦锌,居然都是意外死亡壤追,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評論 3 399
  • 文/潘曉璐 我一進店門供屉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來行冰,“玉大人,你說我怎么就攤上這事伶丐〉孔觯” “怎么了?”我有些...
    開封第一講書人閱讀 169,589評論 0 363
  • 文/不壞的土叔 我叫張陵哗魂,是天一觀的道長肛走。 經(jīng)常有香客問我,道長录别,這世上最難降的妖魔是什么朽色? 我笑而不...
    開封第一講書人閱讀 60,188評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮组题,結(jié)果婚禮上葫男,老公的妹妹穿的比我還像新娘。我一直安慰自己崔列,他們只是感情好梢褐,可當我...
    茶點故事閱讀 69,185評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著赵讯,像睡著了一般盈咳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上边翼,一...
    開封第一講書人閱讀 52,785評論 1 314
  • 那天鱼响,我揣著相機與錄音,去河邊找鬼组底。 笑死丈积,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的斤寇。 我是一名探鬼主播桶癣,決...
    沈念sama閱讀 41,220評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼拥褂,長吁一口氣:“原來是場噩夢啊……” “哼娘锁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起饺鹃,我...
    開封第一講書人閱讀 40,167評論 0 277
  • 序言:老撾萬榮一對情侶失蹤莫秆,失蹤者是張志新(化名)和其女友劉穎间雀,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體镊屎,經(jīng)...
    沈念sama閱讀 46,698評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡惹挟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,767評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了缝驳。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片连锯。...
    茶點故事閱讀 40,912評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖用狱,靈堂內(nèi)的尸體忽然破棺而出运怖,到底是詐尸還是另有隱情,我是刑警寧澤夏伊,帶...
    沈念sama閱讀 36,572評論 5 351
  • 正文 年R本政府宣布摇展,位于F島的核電站,受9級特大地震影響溺忧,放射性物質(zhì)發(fā)生泄漏咏连。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,254評論 3 336
  • 文/蒙蒙 一鲁森、第九天 我趴在偏房一處隱蔽的房頂上張望祟滴。 院中可真熱鬧,春花似錦歌溉、人聲如沸踱启。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,746評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽埠偿。三九已至,卻和暖如春榜晦,著一層夾襖步出監(jiān)牢的瞬間冠蒋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,859評論 1 274
  • 我被黑心中介騙來泰國打工乾胶, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留抖剿,地道東北人。 一個月前我還...
    沈念sama閱讀 49,359評論 3 379
  • 正文 我出身青樓识窿,卻偏偏與公主長得像斩郎,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子喻频,可洞房花燭夜當晚...
    茶點故事閱讀 45,922評論 2 361