如何检出SVN老版本代码
?
問題????????
在項(xiàng)目開發(fā)過程中,我們總會(huì)需要檢出SVN老版本代碼,比如發(fā)布一個(gè)穩(wěn)定版本到UAT環(huán)境,然后該穩(wěn)定版本上又測試出了一些不得不修改的Bug,這個(gè)時(shí)候我們就必須要檢出對應(yīng)版本的代碼,而不是SVN上最新的代碼。
SVN相關(guān)概念
全局版本號
不像其他版本控制系統(tǒng),SVN的修訂號是針對整個(gè)目錄樹的,而不是單個(gè)文件。每一個(gè)修訂號代表了一次提交后版本庫整個(gè)目錄樹的特定狀態(tài),另一種理解是修訂號N代表版本庫已經(jīng)經(jīng)過了N次提交
SVN打Tag
建立一個(gè)SVN版本庫時(shí),SVN會(huì)根目錄下先建立trunk、branches、tags這三個(gè)文件夾,其中trunk是開發(fā)主干,存放日常開發(fā)的內(nèi)容;branches存放各分支的內(nèi)容,比如為不同客戶定制的不同版本;tags存放某個(gè)版本狀態(tài)的標(biāo)簽,比如驗(yàn)收測試版、1.0.3版等。branhces和tags本質(zhì)沒有區(qū)別,都是通過svn copy方式建立的,差異在于通常branches中的內(nèi)容是需要繼續(xù)修改或開發(fā)的,tags中的內(nèi)容是存放不再修改的,這一般通過權(quán)限設(shè)置來解決,tags通常只給管理員開放寫權(quán)限。命令行的話,就是svn copy,TortoiseSVN客戶端的菜單叫分支/標(biāo)記。
解決辦法
1. 在發(fā)布包趨于穩(wěn)定時(shí),對每個(gè)發(fā)布版本都做Branch,如果發(fā)布版本驗(yàn)證通過,保留Branch供后續(xù)使用,否則刪除Branch。SVN Tag與Branch類似。
2. 利用SVN的全局版本號。當(dāng)發(fā)布每個(gè)版本時(shí),記錄當(dāng)時(shí)的SVN全局版本號,后續(xù)可以通過SVN命令Check Out或Export出對應(yīng)版本的代碼。TortoiseSVN里對應(yīng)的菜單為:
?
SVN也提供Command來完成這項(xiàng)工作,Command格式為:
svn co?URL[repository URL] -r [version num],其中version number為參數(shù),可以為數(shù)字型的,也支持時(shí)間,SVN會(huì)自動(dòng)Check Out最接近這個(gè)日期的版本。
轉(zhuǎn)載于:https://www.cnblogs.com/ivanfu/archive/2012/04/27/2473198.html
總結(jié)
以上是生活随笔為你收集整理的如何检出SVN老版本代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 获得MFC窗口其它类指针的方法
- 下一篇: 获取某字符 之后 之前