五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

前端分支規(guī)范

2023-02-24 18:01 作者:吳小敏63  | 我要投稿

開(kāi)發(fā)規(guī)模不大,結(jié)合比較正式的規(guī)范做了一些簡(jiǎn)化

基本概念

常設(shè)分支

  • master - 主分支,用于正式發(fā)布

  • develop - 開(kāi)發(fā)分支,用于創(chuàng)建新開(kāi)發(fā)feature分支

臨時(shí)分支

  • feature/*** - 任務(wù)開(kāi)發(fā)分支

  • release - 預(yù)發(fā)布分支

  • hotfix/*** - 線上熱修分支

這三種分支都屬于臨時(shí)性需要,使用完以后,應(yīng)該刪除,使得代碼庫(kù)的常設(shè)分支始終只有Master和Develop。

環(huán)境

正式環(huán)境:production

測(cè)試環(huán)境:testing

開(kāi)發(fā)環(huán)境:development

分支說(shuō)明

master(主分支)

master為主分支,用于部署到正式環(huán)境production,一般由releasehotfix分支合并,所有提供給用戶使用的正式版本,都在這個(gè)主分支上發(fā)布,任何情況下不允許直接在master分支上修改代碼。

develop(開(kāi)發(fā))

develop為開(kāi)發(fā)分支,始終保持最新完成以及 bug 修復(fù)后的代碼,可根據(jù)需求大小程度(工時(shí)是否小于一天)確定是由 feature 分支合并,還是直接在上面開(kāi)發(fā)。

持續(xù)集成、最新隔夜版本的生成等都是基于這個(gè)分支。

release(預(yù)上線分支、預(yù)發(fā)布分支)

release為預(yù)上線分支,用于部署到測(cè)試環(huán)境testing,發(fā)布正式版本之前(即合并到Master分支之前),我們可能需要有一個(gè)預(yù)發(fā)布的版本進(jìn)行測(cè)試。從master或develop拉取,測(cè)試完成merge回master和develop。

如果?存在?未測(cè)試完畢的需求,就基于master創(chuàng)建。

如果?不存在?未測(cè)試完畢的需求,就基于develop創(chuàng)建。

不建議直接在release分支上直接修改代碼。

feature 分支

feature為需求開(kāi)發(fā)分支,從develop拉取,開(kāi)發(fā)feature完成,merge回develop,一旦該需求上線,便將其刪除。

hotfix(線上熱修分支)

hotfix?為緊急修復(fù)分支,從master拉取,修復(fù)并測(cè)試完成merge回master和develop,一旦修復(fù)上線,便將其刪除。

基本流程

  1. 每開(kāi)發(fā)一個(gè)新功能,創(chuàng)建一個(gè)feature分支,多人在此分支上開(kāi)發(fā);

  2. 提測(cè)時(shí),將master分支和需要提測(cè)的分支匯總到一個(gè)release分支,發(fā)布測(cè)試環(huán)境;

  3. 發(fā)現(xiàn)bug時(shí),在feature分支上debug后,再次回到2;

  4. 發(fā)布生產(chǎn)環(huán)境后,將release分支合并到master分支,刪除release分支。

命令行示例:

# 1 從develop分支創(chuàng)建feature分支git branch -b feature/branch-test develop# 2-1 從master或develop分支(具體條件看上文,這里選擇master)創(chuàng)建release分支git branch -b release master# 2-2 切換到release分支,把feature/branch-test分支合并到release分支git checkout release git merge feature/branch-test# 4-1git checkout master git merge release# 4-2 刪除feature和release分支(本地)git branch -d feature/branch-test git branch -d release

刪除分支:

# 清除本地remotegit remote prune origin# 刪除本地分支(-D為強(qiáng)制刪除)git branch -d|-D ?[branchName]# 刪除遠(yuǎn)程分支git push origin --delete [branchName]

其他場(chǎng)景

發(fā)布測(cè)試環(huán)境(release分支)

  1. 確認(rèn)要發(fā)布的feature 分支上的功能是否開(kāi)發(fā)完畢并提交;

  2. 創(chuàng)建release 分支(發(fā)布分支),將所有要發(fā)布的分支逐個(gè)合并到release分支,有如下情況:

  • feature分支(可能有多個(gè))

  • master分支(期間可能有其他release版本更新到了master)

  1. 命名規(guī)則(可選):release-分支創(chuàng)建日期-新特性和待發(fā)布版本號(hào)

  2. 發(fā)布到測(cè)試環(huán)境,通知測(cè)試;

  3. 測(cè)試完成后刪除本次發(fā)布的所有feature分支。

修復(fù)待發(fā)布版本中的Bug(feature分支)

如果發(fā)現(xiàn)bug,開(kāi)發(fā)人員在 feature 分支上修復(fù)測(cè)試人員提交給自己的bug,修復(fù)完成后,合并到 release 分支,發(fā)布測(cè)試環(huán)境。

發(fā)布正式環(huán)境

  1. 根據(jù)修復(fù)后的release分支再次將master合并,打包發(fā)布生產(chǎn)環(huán)境;

  2. 確認(rèn)發(fā)布成功,并線上驗(yàn)收通過(guò)后,將release分支合并到master分支;

  3. 在master分支上創(chuàng)建標(biāo)簽(可選),命名規(guī)則:tag-日期-新特性和版本號(hào),版本可根據(jù)需要添加,作為發(fā)版里程碑標(biāo)記;

  4. 刪除對(duì)應(yīng)release 分支。

修復(fù)線上Bug(hotfix分支)

  1. 從master 分支某個(gè)tag 上創(chuàng)建一個(gè) hotfix 分支(熱修復(fù)分支),一般是最新的tag應(yīng)該和當(dāng)前生產(chǎn)環(huán)境對(duì)應(yīng);

  2. 開(kāi)發(fā)人員完成Bug 修復(fù),提交hotfix分支到測(cè)試環(huán)境驗(yàn)收通過(guò);

  3. 再次發(fā)布正式環(huán)境流程;

  4. 將 hotfix 分支合并到 master 分支;

  5. 在master分支上創(chuàng)建標(biāo)簽(可選),命名規(guī)則:tag-日期-新特性和版本號(hào),版本可根據(jù)需要添加,作為發(fā)版里程碑標(biāo)記;

  6. 刪除 hotfix 分支。


前端分支規(guī)范的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
当涂县| 龙陵县| 历史| 抚宁县| 伊宁县| 长垣县| 隆子县| 河南省| 中超| 乌海市| 思南县| 梁河县| 香河县| 马关县| 松潘县| 盐边县| 合作市| 拉孜县| 长兴县| 高平市| 许昌市| 湖南省| 抚松县| 嘉善县| 怀仁县| 隆回县| 遂溪县| 通化市| 东宁县| 吉安市| 东莞市| 阳山县| 神农架林区| 平阴县| 榆中县| 高淳县| 昭通市| 资阳市| 衡阳市| 保定市| 伽师县|