資源描述:
《mqq_軟件配置管理工具-svn分支合并手冊(cè)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、軟件配置管理手冊(cè)軟件配置管理工具SVN分支合并手冊(cè)-TortoiseSVN(1.6orhigher)byyunshan第13頁共13頁軟件配置管理手冊(cè)術(shù)語解釋在進(jìn)行合并的過程中,會(huì)遇到各種術(shù)語,尤其是沖突的類型和產(chǎn)生的原因,分別解釋一下。沖突:只要存在多人協(xié)作開發(fā),沖突就不可避免。當(dāng)多人同時(shí)修改同一對(duì)象的相同內(nèi)容時(shí),就會(huì)產(chǎn)生沖突。沖突需要手工去解決,因?yàn)楣ぞ邿o法智能的去做判斷。樹沖突:樹沖突的概念是Subversion1.6在文本沖突基礎(chǔ)上衍生出來的一種新的沖突類型。ú影響一系列文件或文件夾;ú新的樹結(jié)構(gòu)不兼容;樹沖突的類型:n一方刪除,另一方改名;n一方刪除,另一方修改;n一方修改,另一
2、方改名;n一方刪除,另一方拷貝;n一方改名,另一方也改名;n……SVN常用術(shù)語表英文中文說明Checkout檢出將SVN版本庫內(nèi)容拷貝到本地的過程,帶版本控制信息Commit檢入/提交將本地工作目錄的變更提交到版本庫的過程Update更新將版本庫最新變更同步到本地工作目錄的過程Repo-Browser版本庫瀏覽器用來瀏覽版本庫的內(nèi)容Showlog顯示日志用于查看配置庫內(nèi)容變更的歷史記錄Revert還原還原本地工作目錄或文件的修改,丟棄修改Export導(dǎo)出將SVN版本庫內(nèi)容導(dǎo)出到本地,不帶版本控制信息Import導(dǎo)入將未加入到版本庫的目錄和文件,導(dǎo)入到配置庫中,一般在配置庫初始化時(shí)會(huì)用到Sw
3、itch切換將本地工作目錄切換到新地址,本地工作目錄的內(nèi)容會(huì)被新地址的內(nèi)容所替代Relocate重定位將本地工作目錄的版本控制信息中的SVN路徑信息更新為新地址,不會(huì)對(duì)工作目錄的修改造成影響Merge合并用于將分支或歷史修改合并到當(dāng)前工作目錄中Cleanup清理用于清理本地工作目錄下的版本控制信息中的冗余的、不一致的信息,不影響本地的修改第13頁共13頁軟件配置管理手冊(cè)分支合并Part1創(chuàng)建分支下面介紹如何從一個(gè)test_proj的svnproject的trunk/src創(chuàng)建一個(gè)名叫my-branch的分支到branches目錄下。(PS:這里只介紹一種創(chuàng)建分支的方法,其他方法見附錄)My
4、-branchTrunk首先,將版本庫上的trunk/src檢出(Checkout)到本地,如果本地已有,此步可以忽略;然后在本地工作目錄src上選擇創(chuàng)建分支,第13頁共13頁軟件配置管理手冊(cè)創(chuàng)建分支對(duì)話框設(shè)置注意,這里“從此復(fù)制到版本庫”共有3個(gè)選項(xiàng):版本庫最新版本(H):基于版本庫最新版本創(chuàng)建分支;版本庫指定版本(S):基于版本庫歷史版本創(chuàng)建分支;工作副本(W):基于本地工作目錄創(chuàng)建分支;當(dāng)本地的修改不需要提交到版本庫,而只想基于此份代碼創(chuàng)建分支,可以選擇該選項(xiàng);確定后分支就創(chuàng)建完畢了第13頁共13頁軟件配置管理手冊(cè)Part2分支合并分支合并的場(chǎng)景:開發(fā)人員A:在my-branch分支
5、上提交兩次代碼,形成兩個(gè)版本;Revision1:修改文件X1,刪除文件X2Revision2:重命名文件X3,更新X1開發(fā)人員B:同時(shí)B在trunk/src并行的進(jìn)行開發(fā),提交了1個(gè)版本Revision3:修改文件X1(與A的Revision1修改了同一行),同時(shí)修改了X2和X3現(xiàn)在需要把my-branch上的A的修改合并到trunk/src上My-branchTrunkStep1,在本地工作目錄src上選擇SVN合并,如下:第13頁共13頁軟件配置管理手冊(cè)Step2,合并類型(MergeType)選擇,這里選擇第一個(gè)選項(xiàng)說明:合并一個(gè)版本范圍(Mergearangeofrevision
6、s):將一個(gè)SVN路徑的特定版本范圍合并到本地工作目錄;復(fù)興分支(Reintegrateabranch):復(fù)興合并可以理解為是第一種合并類型的一種特例,在復(fù)興合并中,主干可以理解為是自從開創(chuàng)分支之后沒有任何修改,而分支是經(jīng)過修改的,而且合并中分支是沒有版本選擇的。經(jīng)過復(fù)興合并,分支中所有的修改都會(huì)合并到主干中,合并的結(jié)果將使得分支和主干一模一樣,從而可以刪除分支。合并兩個(gè)不同的樹(Mergetwodifferenttrees):而這種類型則是無論是主干還是分支都可以選擇合并的版本,即可以選擇過去的一個(gè)主干版本與分支的某個(gè)版本進(jìn)行合并。合并的時(shí)候以選擇的分支版本為主,如果選擇的主干版本與分支
7、版本有不同的地方,合并時(shí)主干部分將被放棄。特別說明:Subversion1.5以上的版本才支持“復(fù)興分支”和“合并兩個(gè)不同的樹”,如果svn服務(wù)器版本低于1.5,即使客戶端版本高于1.5,也不支持這兩種合并類型。第13頁共13頁軟件配置管理手冊(cè)合并范圍的選擇,這里要特別注意“待合并的版本范圍”?合并不僅僅局限于不同的分支之間,同一個(gè)分支上的多人協(xié)作修改也是合并的過程,此外還可以從自己當(dāng)前分支的歷史版本進(jìn)行合并。?關(guān)于合并