版本控制工具選型_第1頁(yè)
版本控制工具選型_第2頁(yè)
版本控制工具選型_第3頁(yè)
版本控制工具選型_第4頁(yè)
版本控制工具選型_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、一、標(biāo)準(zhǔn)代碼發(fā)布流程1. Master該分支就是主分支。在git repo下主分支的職責(zé)主要就是負(fù)責(zé)記錄stable版本的迭代,當(dāng)在beta版本的項(xiàng)目或是開發(fā)版本的項(xiàng)目得到了充分的驗(yàn)證之后,我才能將分支并入 master分支。master分支永遠(yuǎn)是production-ready的狀態(tài),即穩(wěn)定可產(chǎn)品化發(fā)布的狀態(tài)。2. Develop這個(gè)分支是平常開發(fā)的一個(gè)主要分支,不管是要做新的feature還是需要做bug fix,都是從這個(gè)分支分出來(lái)做。在這個(gè)分支下主要負(fù)責(zé)記錄開發(fā)狀態(tài)下相對(duì)穩(wěn)定的版本,即完成了某個(gè)feature或者修復(fù)了某個(gè)bug后的開發(fā)穩(wěn)定版本。3. Feature branches這

2、是由許多分別負(fù)責(zé)不同feature開發(fā)的分支組成的一個(gè)分支系列。new feature主要就在這個(gè)分支系列下進(jìn)行開發(fā)。當(dāng)我在一個(gè)大的develop的迭代之下,往往我們會(huì)把每一個(gè)迭代分成很多個(gè)功能點(diǎn),并將功能點(diǎn)分派給不 同人的人員去開發(fā)。每一個(gè)人員開發(fā)的功能點(diǎn)就會(huì)形成一個(gè)feature分支,當(dāng)功能點(diǎn)開發(fā)測(cè)試完畢之后,就會(huì)合并到develop分支去。4. release branches同樣,這也是有多個(gè)分支組成的一個(gè)分支系列。這個(gè)分支系列從develop分支出來(lái),也就是預(yù)發(fā)分支。在預(yù)發(fā)狀態(tài)下,我們往往會(huì)進(jìn)行預(yù)發(fā)環(huán)境下的測(cè) 試,如果出現(xiàn)缺陷,那么就在該release分支下進(jìn)行修復(fù),修復(fù)完畢測(cè)試通過(guò)

3、后,即分別并入master分支后develop分支,隨后master分 支做正常發(fā)布。5. Hotfix branches這個(gè)分支系列也就是我們常說(shuō)的緊急線上修復(fù),當(dāng)線上出現(xiàn)bug且特別緊急的時(shí)候,就可以從master拉出分支到這里進(jìn)行修復(fù),修復(fù)完成后分別并入master和develop分支。下面這張圖將完整展示這一個(gè)流程6. 網(wǎng)店通目前的流程常規(guī):分支開發(fā)>分支上線并同步到trunk上緊急修復(fù):基于trunk,新拉一個(gè)新的緊急分支(URGENT),在這個(gè)分支上修復(fù)后,合并到主干和各個(gè)正在開發(fā)的分支 因此,我們的提交流程更加簡(jiǎn)化了。如下圖所示:二、vcs工具選擇1.分布式工具使用基本流程

4、:2.Git和Hg功能比較特征GitHg跟蹤未提交變化是是可維護(hù)性公共庫(kù)需定時(shí)維護(hù),通過(guò)tomcat搭建的服務(wù)器能已配置此項(xiàng)功能不需要網(wǎng)絡(luò)支持http/https,git,ssh,最常見的協(xié)議是sshhttp/https較為常見、ssh也支持存儲(chǔ)方式完全記錄(snapshot)增量存儲(chǔ)(同svn)同svn交互轉(zhuǎn)換支持,有g(shù)it-svn支持,有hg-svnWeb接口支持支持對(duì)分支的支持非常好!創(chuàng)建、合并、刪除分支非常容易、快速、比svn更少產(chǎn)生沖突,更容易合并版本分支必須是全局共享分支;不能刪除;可移植性Windows和linux都支持,windows下使用tomcat搭建服務(wù)器可滿足需求;客戶

5、端比較好用的工具TortoiseGitWindows和linux都支持,在windows下服務(wù)器搭建管理比較復(fù)雜,建議使用工具TortoiseHG(無(wú)線已經(jīng)在用)Rebase(一種比merge更友好規(guī)范的方式)支持,git首創(chuàng)通過(guò)插件支持,hg默認(rèn)不啟用插件版本庫(kù)提交很快(我在局域網(wǎng)中自測(cè)30M文件,從add到push,用時(shí)不足10s,hg 20s)比git快一個(gè)數(shù)量級(jí)(google指定條件下測(cè)試結(jié)果,是git 10至20倍)不足方面缺點(diǎn)GitHg代碼局部檢出不支持不支持一個(gè)分支下多個(gè)葉子節(jié)點(diǎn)無(wú)(和svn一致)當(dāng)不更新就強(qiáng)制直接提交時(shí),會(huì)產(chǎn)生多個(gè)葉子節(jié)點(diǎn),容易和分支的概念混淆,如果再繼續(xù)提交,必須先合并掉所有葉子節(jié)點(diǎn)權(quán)限控制好,針對(duì)每個(gè)倉(cāng)庫(kù)可細(xì)化設(shè)置排除、克隆、推送、創(chuàng)建遠(yuǎn)程分支、刪除遠(yuǎn)程分支、版本信息修改等權(quán)限無(wú)任何權(quán)限控制3.總結(jié)· hg對(duì)分布式的支持遠(yuǎn)不如git· 無(wú)權(quán)限控制,任何人都可以提交(安全性);· Branch為全局共享branch,比git代價(jià)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論