SVN 分支管理
?
SVN 目錄結(jié)構(gòu)一般包含 Trunk,Branches,Tags 三個(gè)一級(jí)目錄。
Trunk 表示主干目錄,從這里創(chuàng)建分支
Branches 表示分支目錄,放置項(xiàng)目的 release 版,開(kāi)發(fā)人員在這些版本上進(jìn)行開(kāi)發(fā)和測(cè)試,完成之后需要合并到 Trunk 中
Tags 存儲(chǔ)項(xiàng)目的發(fā)布版本,一般設(shè)置為只讀
?
流程:
① 首先在服務(wù)器創(chuàng)建新的 SVN 倉(cāng)庫(kù)并且進(jìn)行配置(見(jiàn):http://www.cnblogs.com/dee0912/p/4376447.html)
倉(cāng)庫(kù)名:svnproject
倉(cāng)庫(kù)路徑:/usr/local/www/svnroot/svnproject
?
② 在客戶端創(chuàng)建目錄 svnproject
進(jìn)入 svnproject,右鍵 SVN Checkout
?
③ 在 SVN 服務(wù)器創(chuàng)建 Trunk 目錄
在客戶端目錄 svnproject 中右鍵 TortoiseSVN,選擇 Repo-browser,在服務(wù)器倉(cāng)庫(kù)目錄上右鍵,選擇 Create folder
創(chuàng)建 Trunk 目錄
?
④ 回到客戶端,在 svnproject 目錄中右鍵,選擇 SVN Update
此時(shí) svnproject 目錄中就多了 Trunk 目錄。
進(jìn)入 Trunk 目錄,新建項(xiàng)目文件夾 project,在 project 里創(chuàng)建 index.php
?
把 project 目錄 add 并且 commit。
?
⑤ 開(kāi)始創(chuàng)建分支
在客戶端 Trunk 目錄上右鍵,選擇 TortoiseSVN – Branch/tag(也可以在服務(wù)器上進(jìn)行 copy to)
在 To path 中填寫 Branches 的路徑名稱
在 Create Copy in the repository from 中選擇 HEAD revision in the repository,表示選擇 Trunk 中最新的代碼建立分支
ok – ok
(服務(wù)器上的)分支建立完成。
?
可以在 svnproject/Trunk 上右鍵選擇 TortoiseSVN – Revision graph 查看分支示意圖
?
?
⑥ 在客戶端 svnproject 中 SVN Update,Branches 就從服務(wù)上更新了下來(lái)。
進(jìn)入 Branches 目錄,發(fā)現(xiàn)里面有一個(gè)完整的 project 項(xiàng)目
?
⑦ 合并分支
在客戶端中,編輯分支中的 svnproject/Branches/project/index.php
?
同時(shí)編輯主干中的 svnproject/Trunk/project/index.php
?
將兩個(gè)修改過(guò)的文件全部 commit。
?
將分支合并到主干
在 svnproject/Trunk/project 上右鍵,選擇 TortoiseSVN – Merge
?
在 Merge type 中選擇第二項(xiàng) Merge two different trees
?
Next
在 From 和 To 中都選擇要合并的分支目錄
起始 URL :在 From 的 Revision 選擇創(chuàng)建分支時(shí)的那個(gè)Revision:點(diǎn)擊Show log,選擇最下面一條,原因是該版本是分歧的起始點(diǎn)
結(jié)束 URL :在 To 的 Revision 選擇 HEAD Revision,也就是最新操作,即分歧的結(jié)束點(diǎn)
Next – Merge
?
此時(shí) svnproject/Trunk/Project/index.php 已經(jīng)發(fā)生改變
總結(jié)
- 上一篇: 【leetcode❤python】172
- 下一篇: DAVINCI开发原理之三----达芬奇