深入剖析SVN升級問題
本節和大家一起學習一下SVN升級問題,隨著SVN的發展,版本的不斷更新,SVN升級問題顯得尤為重要了,那么怎么進行SVN升級呢,本節就給大家一一講解。首先看一下SVN升級前的環境。
SVN升級前環境:
Operatingsystem:Windowxpprofessionalsp2
Subversion1.2
Apache2.0.59noSSL
Clienttool:TortoiseSVN1.4.5
SVN升級后:
Subversion1.5
Apache2.2
Clienttool:TortoiseSVN1.5
下載安裝包:
CollabNetSubversion下載:http://www.collab.net/downloads/
Windows常用客戶端TortoiseSVN:http://tortoisesvn.net/downloads
注:CollabNet的安裝包已經將apache2.2封裝在里面了,不需要再像以前那樣需要單獨安裝apache,并且在安裝時可以初始化配置倉庫目錄。
安裝完服務器,打開apache默認頁面,頁面上出現大大的"Itworks!"。:
注意:
1、CollabNet已經將mod_authz_svn.so和mod_dav_svn.so兩個文件粘貼到modules目錄
2、CollabNet已經在配置文件里裝載了mod_dav.so、mod_dav_fs.so和mod_dav_svn.so
3、需要在配置文件添加LoadModuleauthz_svn_modulemodules/mod_authz_svn.so
4、檢查配置文件尾部(沒有SSL方式)
DAVsvn
SVNParentPathd:\svn_rep
AuthTypeBasic
AuthName"Subversionrepositories"
AuthUserFileD:\svn_rep\passwd
AuthzSVNAccessFileD:\svn_rep\authz
Requirevalid-user
這兩個安裝都非常傻瓜,安裝完后,將最新的配置庫拷貝到新建的倉庫下,或者修改httpd.conf文件,直接將配置倉庫指向SVN升級前路徑。
工作拷貝升級
警告:如果一個Subversion1.5客戶端遇到了一個1.5以前的工作拷貝,它會在接觸到工作拷貝時自動升級工作拷貝格式,并使舊的Subversion客戶端不能再讀這些工作拷貝了。但是這種自動升級行為不會發生在版本庫上,只發生在工作拷貝。
版本庫升級
我們來看一下SVN升級中版本庫升級問題。Subversion1.5服務器可以與1.4和以前的版本庫工作,如果不使用svnadminupgrade命令,版本庫不會自動升級到1.5。這意味僅僅升級服務器不能直接得到某些特性,你也需要升級版本庫。運行svnadminupgrade###(配置庫絕對路徑)
D:\ProgramFiles\CollabNetSubversionServer>svnadminupgraded:/svn_rep/myproject
提示如下:
Repositorylockacquired.
Pleasewait;upgradingtherepositorymaytakesometime...
Upgradecompleted.
創建索引
Subversion1.5為每個版本庫維護了一個節點起源的索引,為了得到一些信息,偶爾構建這個索引。但是對于包含許多修訂的老版本庫,最好一次創建這個索引,
D:\ProgramFiles\CollabNetSubversionServer>svn-populate-node-origins-indexd:/svn_rep/myproject
輸出:
[1/22]Found3newlinesofhistory.
[2/22]Found1newlinesofhistory.
[3/22]Found5newlinesofhistory.
[4/22]Found6newlinesofhistory.
………………
SVN升級注意事項:
1為穩妥起見升級前建議備份好配置庫,萬一出現問題可以恢復。
2升級后驗證正確的輸入應該為http://localhost/svn/project/,http://localhost/svn/是不會出來預期的頁面的。
升級完畢,非常簡單,剩下的就是對感興趣的新功能進行驗證了。本節關于SVN升級問題講解完畢,請關注本節其他相關報道。
【編輯推薦】