分支管理-分支開發(fā)

簡介

? ? ? ? 分支開發(fā)(branch development)。它的特點(diǎn)就是項(xiàng)目的功能開發(fā)工作主要在從master主分支切出來的fe ature分支上垦藏。根據(jù)功能代碼開發(fā)完畢后的項(xiàng)目發(fā)布披蕉,就出現(xiàn)了兩種不同的發(fā)布模式:
? ? ? ? ? ? ? ? 分支開發(fā)-主干發(fā)布
? ? ? ? ? ? ? ? 分支開發(fā)-分支發(fā)布-合并回主干
案例需求:
? ? ? ? n月 1 日 A項(xiàng)目發(fā)布1.0版本
? ? ? ? n 月 2 日 A項(xiàng)目著手開發(fā)1.1 版本的新功能
? ? ? ? n月 7 日 線上運(yùn)行A項(xiàng)目的1.0版本出現(xiàn)問題颈畸,并與當(dāng)日修復(fù)并發(fā)布1.01版本
? ? ? ? n月 16日 線上運(yùn)行A項(xiàng)目的1.0版本出現(xiàn)問題,并與當(dāng)日修復(fù)并發(fā)布1.02版本 n 月 20日 A項(xiàng)目完成新版本功能没讲,并發(fā)布1.1版本
注意:
? ? ? ? 1.01和1.02的修復(fù)代碼過程不影響1.1正常發(fā)布
? ? ? ? 1.1 版本包含 1.01和1.02的修復(fù)代碼功能

1. 分支開發(fā)-主干發(fā)布

分支開發(fā)-主干發(fā)布簡介
? ? ? ?分支開發(fā)-主干發(fā)布眯娱。它的特點(diǎn)就是項(xiàng)目的功能開發(fā)工作在從master主分支切出來的feature分支上,代碼開發(fā)完畢后爬凑,經(jīng)過功能測試沒有問題后徙缴,在正式代碼發(fā)布之前,先從master主分支獲取最新/最完整的代碼嘁信,合并到當(dāng)前的feature分支上于样,進(jìn)行整合功能測試,測試通過后潘靖,就將代碼合并到master主功能分支上穿剖,發(fā)布代碼的時(shí)候,只需要打一個(gè)release標(biāo)簽即可卦溢。如果進(jìn)行下一個(gè)功能版本開發(fā)糊余,那么就從master分支切出一個(gè)新的fea ture分支即可。
? ? ? ?如果線上代碼出現(xiàn)bug单寂,那么就從master分支上切出來一個(gè)bug分支贬芥,修復(fù)該bug即可。
代碼開發(fā)效果


代碼開發(fā)原則

  1. 只能在功能feature分支上開發(fā)凄贩,不能直接在master主分支上開發(fā)
  2. feature分支代碼開發(fā)完畢后誓军,代碼功能必須通過測試
  3. feature分支在合并到master分支前,獲取最新的master分支內(nèi)容疲扎,合并后進(jìn)行功能測試昵时,再合并到ma
    ster
  4. feature分支合并到master主分支后,應(yīng)該停用該feature分支椒丧,最好刪除壹甥。
  5. master主干上的每一次發(fā)布都是做了一個(gè)release標(biāo)簽而不是分支。
    優(yōu)勢
    ? ? ? ?常見的一種代碼開發(fā)方式壶熏。
    ? ? ? ?團(tuán)隊(duì)人員在自己的feature分支工作句柠,隔離其他工作的變動多個(gè)功能使用feature分支并行開發(fā),互不影響
    ? ? ? ?因?yàn)槎际敲看喂δ艽a發(fā)布都是在之前基礎(chǔ)上,所以代碼內(nèi)容調(diào)整起來比較容易溯职,即使有沖突也可以快速解決
    劣勢:
    ? ? ? ?feature分支最終要合并到master分支精盅,若feature分支間代碼有交互,導(dǎo)致master合并沖突(文件谜酒、語意)
    ? ? ? ?feature分支代碼測試叹俏,需要單獨(dú)建立測試流水線,浪費(fèi)資源僻族,而且并未真正實(shí)施項(xiàng)目集成測試粘驰。

2. 分支開發(fā)-分支發(fā)布

分支開發(fā)-分支發(fā)布簡介
? ? ? ?分支開發(fā)-分支發(fā)布的特點(diǎn)就是項(xiàng)目的功能開發(fā)工作在從master主分支切出來的feature分支上,代碼開發(fā)完畢后述么,經(jīng)過功能測試沒有問題后蝌数,然后直接在當(dāng)前feature分支上進(jìn)行代碼發(fā)布,發(fā)布后度秘,將feature分支的代碼合并到master主分支上顶伞。如果進(jìn)行下一個(gè)功能版本開發(fā),那么就從master分支再切出一個(gè)新的feature分支即可剑梳。
? ? ? ?如果線上代碼出現(xiàn)bug枝哄,那么就可以直接在feature分支上修復(fù),修復(fù)后阻荒,將代碼合并回master分支;如果b ug功能很重要众羡,可以單獨(dú)從master分支上再切一個(gè)bug分支來修改侨赡。
分支開發(fā)-分支發(fā)布流程


代碼開發(fā)原則
1. 只能在功能feature分支上開發(fā),不能直接在master主分支上開發(fā)粱侣。
2. feature分支代碼開發(fā)完畢后羊壹,代碼功能必須通過測試。
3. feature分支代碼功能通過測試后齐婴,直接進(jìn)行代碼發(fā)布油猫。
4. feature分支代碼發(fā)布后,將最終代碼合并到master主分支柠偶,該feature分支作為版本可以一直存在下去

優(yōu)勢:
? ? ? ?最常見的代碼開發(fā)方式
? ? ? ?多個(gè)功能使用feature分支并行開發(fā)情妖,互不影響
? ? ? ?可以選擇指定的feature分支進(jìn)行代碼發(fā)布,不會被其他功能阻塞诱担。
劣勢:
? ? ? ?feature分支最終要合并到master上毡证,若feature分支間代碼有交互,導(dǎo)致合并沖突(文件蔫仙、語意)料睛。
? ? ? ?feature分支發(fā)布后容易忘記合并回master主干。
? ? ? ?feature分支代碼測試,需要單獨(dú)建立測試流水線恤煞,浪費(fèi)資源屎勘,而且并未真正實(shí)施項(xiàng)目集成測試。
常見場景:
? ? ? ?開源項(xiàng)目居扒、多產(chǎn)品線的項(xiàng)目

3. 小結(jié)

? ? ? ?分支開發(fā)分類:分支開發(fā)-主干發(fā)布概漱、分支開發(fā)-分支發(fā)布
? ? ? ?主干發(fā)布流程:拉取-開發(fā)-測試-拉取-測試-合并-發(fā)布(標(biāo)簽)-循環(huán)分支發(fā)布流程:拉取-開發(fā)-測試-發(fā)布-合并-循環(huán)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市苔货,隨后出現(xiàn)的幾起案子犀概,更是在濱河造成了極大的恐慌,老刑警劉巖夜惭,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件姻灶,死亡現(xiàn)場離奇詭異,居然都是意外死亡诈茧,警方通過查閱死者的電腦和手機(jī)产喉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來敢会,“玉大人曾沈,你說我怎么就攤上這事∨富瑁” “怎么了塞俱?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長吏垮。 經(jīng)常有香客問我障涯,道長,這世上最難降的妖魔是什么膳汪? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任唯蝶,我火速辦了婚禮,結(jié)果婚禮上遗嗽,老公的妹妹穿的比我還像新娘粘我。我一直安慰自己,他們只是感情好痹换,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布征字。 她就那樣靜靜地躺著,像睡著了一般晴音。 火紅的嫁衣襯著肌膚如雪柔纵。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天锤躁,我揣著相機(jī)與錄音搁料,去河邊找鬼或详。 笑死,一個(gè)胖子當(dāng)著我的面吹牛郭计,可吹牛的內(nèi)容都是我干的霸琴。 我是一名探鬼主播,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼昭伸,長吁一口氣:“原來是場噩夢啊……” “哼梧乘!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起庐杨,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤选调,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后灵份,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體仁堪,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年填渠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了弦聂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,144評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡氛什,死狀恐怖莺葫,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情枪眉,我是刑警寧澤捺檬,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站贸铜,受9級特大地震影響欺冀,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜萨脑,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望饺饭。 院中可真熱鬧渤早,春花似錦、人聲如沸瘫俊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽扛芽。三九已至骂蓖,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間川尖,已是汗流浹背登下。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人被芳。 一個(gè)月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓缰贝,卻偏偏與公主長得像,于是被迫代替她去往敵國和親畔濒。 傳聞我的和親對象是個(gè)殘疾皇子剩晴,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容