久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

項(xiàng)目版本控制

 時間要去哪 2017-03-22

一、基本概念

trunk: 主干(可以理解為開發(fā)環(huán)境的代碼,,平常做開發(fā)的工作目錄)

branches:從主干拷貝了一份代碼重新在svn服務(wù)器上的建了個分支目錄(通常叫branch,,一般與生產(chǎn)上的代碼保持同步)

tag:主干版本標(biāo)記(標(biāo)識每次大的升級版本號)

二,、管理原則

1、系統(tǒng)在沒有上線之前,,只有一個主干(trunk),,所有開發(fā)人員在主干上進(jìn)行協(xié)同開發(fā)。

2,、系統(tǒng)上線之后,,在主干的基礎(chǔ)上創(chuàng)建一個分支,該分支上主要用于修復(fù)生產(chǎn)環(huán)境的BUG,,或者緊急新功能上線,。主干仍然進(jìn)行新功能模塊的開發(fā)。

3,、每次生產(chǎn)環(huán)境的升級,都從分支上進(jìn)行打包部署,。升級完之后需將分支上改動的代碼及時合并到主干上(開發(fā)人員常常忘記,切記),。

4、新功能在主干上開發(fā)好了,,需要進(jìn)行一次大的升級,,可以先將主干打上一個TAG做為大版本號,并且同時在此基礎(chǔ)上創(chuàng)建一個對應(yīng)的分支,,然后切換到分支上進(jìn)行打包部署,,這個版本的生產(chǎn)代碼維護(hù)也在分支上。

原則:分支用于生產(chǎn)代碼維護(hù),,主干用于平時開發(fā),,TAG用于主干大版本的標(biāo)記。

三,、合并

合并根據(jù)目標(biāo)不同分為2種:

1,、分支合并到主干:主要用在修復(fù)完生產(chǎn)BUG,并上線之后,。需把改動的代碼合并到主干上,。

2、主干合并到分支:公用的邏輯改動,,需反映到所有并行的分支上,。

注意:合并是要在目標(biāo)目錄上進(jìn)行操作的,如:分支合并到主干(主干為目標(biāo)),,需切換到主干上操作合并功能,,主干合并到分支(分支為目標(biāo)),需切換到分支上進(jìn)行操作,。

第一個選項(xiàng):合并指定的版本,,可以是從分支合并到主干,,也可以是主干合并的版本,主要作用把分支的部分修改合并到主干上,。

第二個選項(xiàng):將主干上的修改合并到分支,。

第三個選項(xiàng):兩個不同的分支合并,但其實(shí)也可以是分支和主干的合并,,只要from選擇為主干就行,。

通常選擇第一項(xiàng)或第三項(xiàng)進(jìn)行操作,這里需要注意的是:

這里其實(shí)就是比對TO版本和FROM版本的差異,,并把差異合并到TO的當(dāng)前版本(head版本)中去,。

注:如果要把分支所有的修改合并到主干上,F(xiàn)ROM需要選擇主干創(chuàng)建見分支時的版本號,,TO選擇分支最新版本(head版本)就行了,。

      如果FROM也選擇主干head版本,TO也選擇head版本,,就會把所有分支與主干不同的差異覆蓋到當(dāng)前主干上來,。造成主干的文件被分支覆蓋。

舉例(分支合并到主干):

 

主干trunk:

 

https://192.168.0.11:8443/svn/code/product/trunk/項(xiàng)目名稱/code/OSGiServer/plugins/com.tzf.svn.test

 

 

分支branches:

 

https://192.168.0.11:8443/svn/code/product/branches/項(xiàng)目名稱/code/OSGiServer/plugins/com.tzf.svn.test

 

 

先 從http://subversion./packages.html#windows 下載win32svn文件:Setup-Subversion-1.6.13,。安裝,,在cmd下,svn 命令就可以了,。下載這個的作用有兩個:查看分支分出時的版本和解決合并沖突,。

被操作對象: 主干

From : 主干的 打出分支時的版本

To: 分支的 Head版本 (最新版本)

好啦,現(xiàn)在將工程切換到主干里,,因?yàn)閺姆种Ш喜⒌街鞲桑?span style="color: #ff0000;">被操作對象是主干工程,。

要合并得知道分支分出去時的版本號,cmd打開命令行,,使用svn log --verbose --stop-on-copy 【branch_path】查看版本更新信息,,如圖:

找到最下版本信息,這里就是r8623,,記住這個版本號,,以后合并的from就是從這個版本號開始的。to就是指你想要合并的版本號,,一般都是最新版本,,當(dāng)然也可以是指定版本。

切換到主干,,選中工程,,右鍵team -> 合并:

next,出現(xiàn)(如果沒提交要先提交)

from就是分支的路徑,,下面選擇的就是剛剛記下的分支分出的版本號,,to這里就是合并到那個版本,,我這里選擇的最新版本。點(diǎn)finish,,如果文件有沖突就彈出詢問框,,選擇現(xiàn)在暫時不處理就行。


我這里沒有出現(xiàn)文件沖突,,點(diǎn)ok就基本大功告成,。這時需要在主干里體檢帶修改符號的文件,完成提交就搞定了合并,。

如果文件沖突了怎么辦呢,,在命令行下進(jìn)入沖突文件的目錄,用svn命令行客戶端鍵入:svn resolved 沖突的文件名  就可以解除沖突,。

好了這是從分支到主干的合并,。還有兩種合并:從主干到分支和從分支到分支,操作也是大同小異,。具體參考如下:

 

從主干合并到分支

試想這樣的情況:一個項(xiàng)目里面,,要獨(dú)立出來一個子項(xiàng)目,需要單獨(dú)發(fā)布版本,,用到了基礎(chǔ)框架代碼,,而基礎(chǔ)框架在主干中不斷修改完善,,這就需要從主干合并到分支,。

被操作對象: 分支

From: 分支的第一個版本(最舊版本)

To: 主干的Head版本(最新版本)

相當(dāng)于從分支的第一個版本開始一直到主干最后一個版本結(jié)束合并之后,替換分支,。

從分支合并到分支

有 這樣的需求:一個項(xiàng)目中有很多分支,,這些分支需要分期上線,有多個工作并行,,但每一期之間不能相互影響,,這就可以打出幾個tag(也是分支),從主干 copy而來,。其他主干根據(jù)排期分別合并到這些tag中來,。比如有prjTag1和prjTag2,model1,、model2需要合并到prjTag1 中,,model3、model4需要合并到prjTag2中,。拿prjTag1舉例:

在prjTag1的work copy中,,merge

From : 主干的 打出分支時的版本

To: 分支的 Head版本 (最新版本)

注意: From不是本Tag的某個版本,而是之前主干打出分支時的版本,,最終Merge到prjTag1的work copy,,而prjTag1是找不到當(dāng)初打分支時的版本的,。

四、分支

需求:branches開發(fā)完切一個分支到tags

TortoriseSVN--->Branch/tag,,選擇tags存放路徑,。

 

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

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多