小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

源代碼主干分支開發(fā)四大模式

 rUNoUT 2019-03-08

作者:張克強(qiáng)    作者微博:張克強(qiáng)-敏捷307

1,先鋒主干多穩(wěn)定分支;2,守護(hù)主干多先鋒分支;3,主干無分支;4,守護(hù)主干單分支。

一、先鋒主干多穩(wěn)定分支 

得到一個(gè)穩(wěn)定版本后,將此穩(wěn)定版本放到一個(gè)新分支上,針對(duì)此穩(wěn)定版本的修修補(bǔ)補(bǔ)就在這個(gè)分支上進(jìn)行,新功能不在此分支上開發(fā),而在主干上進(jìn)行新功能的開發(fā)。 這是業(yè)界采用較多的模式。

穩(wěn)定分支上的有些修改,比如缺陷修復(fù),需要合并到主干, 但有些特定修改,是不需要合并到主干的。這時(shí)需要千萬注意,合并準(zhǔn)確的文件到主干。

對(duì)于不能合并到主干的情況,常見的是再拉一個(gè)分支,這個(gè)分支專門為少數(shù)特定情況而用,但從全局講,可能會(huì)導(dǎo)致太多分支,不同分支間混亂,所以這并不推薦。推薦寧愿采用配置開關(guān)。


圖片來源于 http://blog.csdn.net/binnacler/article/details/4274486 

比如freebsd的發(fā)布就是一個(gè)典型的例子。
freebsd的主干永遠(yuǎn)是current,也就是包括所有最新特性的不穩(wěn)定版本。然后隨著新特性的逐步穩(wěn)定,達(dá)到一個(gè)發(fā)布的里程碑以后,從主干分出來一個(gè)stable分支。freebsd是每個(gè)大版本一個(gè)分支。也就是說4.x,5.x,6,x各一個(gè)分支。每個(gè)發(fā)布分支上只有bug修改和現(xiàn)有功能的完善,而不會(huì)再增加新特性。新特性會(huì)繼續(xù)在主干上開發(fā)。當(dāng)穩(wěn)定分支上發(fā)生的修改積累到一定程度以后,就會(huì)有一次發(fā)布。發(fā)布的時(shí)候會(huì)在穩(wěn)定分支上再分出來一個(gè) release分支。以6.x為例,就會(huì)有6.0,6.1,6.2…等發(fā)布分支?!敬硕握杂诰W(wǎng)絡(luò) http://thinkernel./4518935.html 】

二、守護(hù)主干多先鋒分支

得到一個(gè)穩(wěn)定版本后,拉出先鋒分支,在分支上開發(fā)新功能,在主干上進(jìn)行修修補(bǔ)補(bǔ)。當(dāng)先鋒分支通過一定的測(cè)試之后,合并到主干。可以同時(shí)有多個(gè)先鋒分支,不同的功能可以拉不同的分支,不同發(fā)布時(shí)間點(diǎn)而又要同時(shí)開發(fā)的內(nèi)容必須在不同的分支上。
從發(fā)布的角度講,更推薦將肯定一起發(fā)布的內(nèi)容放在相同的先鋒分支上。

主干上永遠(yuǎn)是穩(wěn)定版本,可以隨時(shí)發(fā)布。bug的修改和新功能的增加,全部在分支上進(jìn)行。而且每個(gè)bug和新功能都有不同的開發(fā)分支,完全分離。而對(duì)主干上的每一次發(fā)布都做一個(gè)標(biāo)簽而不是分支。分支上的開發(fā)和測(cè)試完畢以后才合并到主干。
這種發(fā)布方法的好處是每次發(fā)布的內(nèi)容調(diào)整起來比較容易。如果某個(gè)新功能或者bug在下一次發(fā)布之前無法完成,就不可能合并到主干,也就不會(huì)影響其他變更的發(fā)布。另外,每個(gè)分支的生命期比較短,唯一長期存在的就是主干,這樣每次合并的風(fēng)險(xiǎn)很小。每次發(fā)布之前,只要比較主干上的最新版本和上一次發(fā)布的版本就能夠知道這次發(fā)布的文件范圍了。

【此段摘自于網(wǎng)絡(luò) http://thinkernel./4518935.html 】

三、主干無分支

只有主干,沒有分支,所有緊急正常的修改全在主干上,開發(fā)了一半的東西如果要上線的話,要巧妙的藏起來。對(duì)程序的結(jié)構(gòu)提出了高要求,分分合合要方便,開關(guān)配置是少不了的了。單從效率講,這是最高效的模式了。要有不少配套措施才可以。常見的配套措施:每日集成(編譯部署測(cè)試),靜態(tài)代碼檢查,測(cè)試不僅僅有單元測(cè)試,還有接口測(cè)試,還有界面自動(dòng)化測(cè)試。

四、守護(hù)主干單分支

只有一個(gè)分支,緊急修改在主干上進(jìn)行,正常開發(fā)在分支上進(jìn)行,主干和分支根據(jù)需要雙向同步。需要采用與主干無分支相同的配套手段,而且在主干和分支上都需要建設(shè)每日集成,甚至持續(xù)集成。


以上四種模式是主干分支開發(fā)的典型情況。
在實(shí)際應(yīng)用中,前2種更加常見一些,
主干無分支開發(fā)時(shí)碰到極其特殊情況時(shí),不排除拉短分支。
而在第一個(gè)模式先鋒主干穩(wěn)定分支開發(fā)時(shí)與第三個(gè)模式主干無分支,是可以在一段時(shí)間內(nèi)相互轉(zhuǎn)換的。

參考資料
1,代碼的分支管理策略 http://thinkernel./4518935.html 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多