成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

多人協作如何管理Git分支

系統
據了解,我們團隊以前采用的是版本分支管理策略,也就是每次上線新版本都會創建一個新的版本分支,而新的需求開發也從當前最新的版本分支遷出一個新的需求分支開發,線上bug則在版本分支上修改然后發布。

 [[390059]]

關于Git分支管理,每個團隊在不同階段都有自己的管理策略,最近我們團隊也爭論過這個問題。

據了解,我們團隊以前采用的是版本分支管理策略,也就是每次上線新版本都會創建一個新的版本分支,而新的需求開發也從當前最新的版本分支遷出一個新的需求分支開發,線上bug則在版本分支上修改然后發布。

在我接手項目的時候發現一個問題,由于拆分的微服務項目以及組件不在同一個project里面,我拉取全部項目代碼后全部切換到master分支居然構建失敗,提示xx類沒有xxx方法,然后我全部切換到test分支情況依舊。后面同事找出的原因是新版本的代碼沒有合并到master分支。顯然,版本分支成了項目的主分支,而master分支相當于一個棄用的分支。

由于項目目前全部容器化部署,并且走自動化部署,因此版本分支已經不適用了,目前采用的策略是線上master分支,測試test分支,當開發完成需求后將需求分支合并到test分支交給測試的同事去測試,測試完成后由開發合并到master分支部署。

這種策略同樣存在問題,首先,開發不應該有權限修改master分支,其次,多個需求一同合并到master分支出現沖突會影響發布。

在發布新版本之前,我們應該確保已經解決所有代碼沖突問題,因此應該多出一個分支,只有該分支的代碼可以直接合并到master分支,所有需要在下個版本發布的需求分支通過測試后都應該先合并到該分支,在上線前再由項目負責人發起合并到master的請求,由部門主管處理合并請求,或者由項目負責人直接處理合并。

我并不看好自動觸發構建發布生產環境這種策略(代碼一合并到master分支就自動發布),因為往往在發版之前都需要做一些準備,等所有準備就緒后再按順序去發版,例如數據庫表結構的修改、配置文件的修改(開發人員不應該拿到生產環境的配置)。

此外,自動觸發構建發布生產環境也不支持藍綠/灰度發布,當然了,我們項目目前也不需要藍綠/灰度發布,所以說,每個團隊在不同階段都有適合自己的管理策略。

以下分享筆者前后就職的三個公司當時采用的分支管理策略。

目前我們團隊使用的分支管理策略

  • 生產分支:master
  • 測試分支:test
  • 需求分支:${需求}

開發人員開發需求需創建需求分支,需求開發完成后合并到test分支,測試人員在test分支上測試。

測試人員提交bug后,開發人員需切回需求分支修復bug,修復完成后合并到test分支,如此往復。

需求測試通過后,由開發合并到master分支發布。

線上bug直接在master分支修改,修改完成在master分支發布。

這種方案直接在master分支修復線上bug繞過了測試,而且每個開發都有master分支的提交權限,存在很大的風險,因此這種方案只適合小團隊。

老東家使用的分支管理策略

  • 開發分支:dev
  • 生產分支:master
  • 測試分支:test
  • 需求分支:${需求}
  • 版本分支:relese-${version}

開發人員開發需求需創建需求分支,開發完成后由測試人員切換到該需求分支測試,或者批量測試的話就將多個需求分支合并到test分支。

測試人員提交bug后,開發人員需切回需求分支修復bug,修復完成后再通知測試人員切換到該分支測試,或是合并到test分支測試,循環往復。

需求測試通過后,由開發人員/開發組長將需求分支合并到dev分支,在約定的版本上線時間由開發組長提交將dev分支合并到master分支的請求,由主管合并分支。

最后,每次發版之后都將dev切出一個relese-${version}分支,線上bug在此分支修改,并且修改完成后測試需切到該分支測試,測試完成后就可以直接合并到master分支發布。

前前公司使用的分支管理策略

無分支管理策略,沒有測試環境,需求在需求分支開發,開發完成后由開發自己測試,覺得沒問題了就直接合并到dev分支,然后發布。master分支也是棄用的。有些簡單的需求以及線上bug都是直接在dev分支改動。(沒有測試就直接上線,非常的恐怖)。

本文轉載自微信公眾號「Java藝術」,可以通過以下二維碼關注。轉載本文請聯系Java藝術公眾號。

 

責任編輯:武曉燕 來源: Java藝術
相關推薦

2014-08-08 10:20:23

Git版本管理系統

2021-09-15 14:53:35

在線文檔多人協作

2022-11-07 08:01:18

Git分支管理

2024-04-03 09:03:05

項目分支管理

2020-07-09 08:00:25

Git分支模式

2022-10-26 09:22:19

git命令Linux

2023-10-09 08:39:33

Git Flow分支管理模型

2018-06-08 09:27:08

GitLinux開源

2015-12-30 10:29:40

Git協作流程詳解

2022-03-04 09:02:01

StoryBoard工具git

2020-09-06 09:55:13

git分支命令

2011-11-30 16:37:58

sync

2022-05-25 16:51:41

Git 分支重命名開發者

2023-12-01 11:05:29

Git 分支

2016-11-10 07:50:55

群暉云端Office

2019-08-15 10:25:02

代碼開發工具

2009-07-14 08:26:46

微軟網絡版Office網絡版Office功能Office 2010

2021-04-25 08:43:30

管理前端后端

2021-10-13 13:51:24

MDKGit管理

2011-08-09 10:20:55

GitLinux遠程倉庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 天天操天天干天天透 | 91精品久久久久久久久中文字幕 | 国产精品免费一区二区三区四区 | 欧美一级二级三级视频 | 亚洲精品久久久9婷婷中文字幕 | 国产精品福利在线 | 一区二区三区回区在观看免费视频 | 免费国产网站 | 狠狠干天天干 | 99精品视频免费观看 | 亚洲天天 | 国产精品中文字幕一区二区三区 | 国产精品99 | 日本中文字幕一区 | 中文字幕av第一页 | 久久久日韩精品一区二区三区 | av不卡一区 | 欧美视频一区二区三区 | 国产亚洲精品精品国产亚洲综合 | 99精品久久久国产一区二区三 | 女人一区| 综合色久 | 亚洲欧美国产精品久久 | 成人黄色在线观看 | 亚洲精品一区二区网址 | 中文字幕第九页 | 我我色综合 | 精品一区二区三区在线观看国产 | 国产一区二区在线播放 | 日韩欧美国产精品 | 亚洲国产成人精品女人久久久 | 国产wwwcom | 国产免费看 | 中文字幕一二三区 | 亚洲人a| 午夜影院 | 精品一区二区视频 | 久久91| 天天综合网天天综合色 | 91精品国产91久久久久久密臀 | 黄a在线播放 |