SVN管理與應用相關的資料參考手冊
本節講解一下SVN管理與應用相關的資料,之前幾節我們也提到了SVN管理問題,本節再簡單和大家討論一下,希望對你學習SVN有一定的幫助。
最常見的配置模式便是與Apache集成,這樣SVN可以采用WebDev協議方式提供服務。主要的好處有:通過Apache以HTTP方式穿透防火墻,便于在互聯網環境使用;提供目錄的版本控制;純2進制的文件對比方式等。下面將介紹如何將SVN集成在Apache上。
準備工作:
下載軟件:
SVN服務器端程序。到官方網站的下載二進制安裝文件,來到二進制包下載部分,找到WindowsNT,2000,XPand2003部分,然后選擇"thisdirectory",這樣我們可以看到許多下載的內容,目前可以下載svn-1.2.3-setup.exe。
TortoiseSVN,客戶端程序。TortoiseSVN是擴展WindowsShell的一套工具,可以看作Windows資源管理器的插件,安裝之后Windows就可以識別Subversion的工作目錄。
官方網站是TortoiseSVN,下載方式和前面的svn服務器類似,在Download頁面的我們選擇OfficialversionforWin2k/XPorhigher的版本,然后在sourceforge的下載頁面選擇目前的最高穩定版本的安裝文件TortoiseSVN-1.2.5.4719-svn-1.2.3.msi。(注意:TortoiseSVN有一個特殊對VS.Net運行時一個BUG修正的版本,在下載頁面有選擇:SpecialversionforWin2k/XPorhigher:(WeprovideNOsupportforthis!)uses_svnfoldersinsteadof.svntoworkaroundtheVS.NETbugwithwebprojects.Ifyoudon'tusewebprojectsthenpleaseusetheofficialversion.)
TortoiseSVN的中文語言包,注意這個需要下和客戶端程序版本相同的。可以在Download頁面內的LanguagePacks選擇下載。
Apache服務器程序。可以到Apache官方網站下載最新版本的Apache,并且SVN必須運行在Apache2以上版本,在下載頁面選擇Windows的安裝包文件apache_2.0.55-win32-x86-no_ssl.msi
AnkhSVN,可選安裝VS.Net的SVN插件。有0.5和0.6版本選擇,0.6版支持VS2005Beta2,下載頁面。
停止IIS,因為Apache默認安裝為80端口,需要關閉IIS避免端口沖突。可以在安裝好之后再調整端口。
開始安裝:
SVN管理時先安裝Apache服務器。在到填寫ServerInfo的時候,若機器已經啟用了AD,安裝程序會自動填寫,否則自己手動填寫。安裝完成之后到安裝目錄下找到conf目錄下的httpd.config文件,搜索Listen,并將Listen后面的80改為8080(或者你希望的端口),然后重新啟動Apache服務器,這時可以用http://localhost:8080來測試是否安裝正確。
再安裝SVN服務器,沒有什么好說的,一路回車就可以了。(安裝SVN時,請確保Apache服務器正在運行狀態,安裝過程中可能會將Apache關閉,重新啟動屬于正常現象)
配置Apache服務器與SVN集成:
SVN管理過程中安裝好Apache服務器以后還要進行配置。首先將Subversion安裝目錄bin\下面的兩個文件:mod_authz_svn.so和mod_dav_svn.so復制到Apache安裝目錄modules\目錄下。
有些文章說需要再修改httpd.conf,并做如下修改:
找到Apache安裝目錄下的conf目錄,用文本編輯器打開httpd.conf,找到一下兩行:
#LoadModuledav_modulemodules/mod_dav.so
#LoadModuledav_fs_modulemodules/mod_dav_fs.so
將每行前面的注釋符“#”去掉。再在所有LoadModule語句的最后添加一下幾行:
#SVN
LoadModuledav_svn_modulemodules/mod_dav_svn.so
LoadModuleauthz_svn_modulemodules/mod_authz_svn.so
但是我安裝完之后發現這個文件已經被做了那些修改,大概是新版的SVN安裝程序做了一些優化吧。其實在成功安裝SVN之后,Apache服務器已經和SVN初步集成。如圖:
注意下面的狀態欄已經是Apache/2.0.55SVN1.2.3DAV/2建立一個SVN存放文件的目錄,我在F盤下創建一個文件夾:F:/SubversionFiles
接下來我們必須告訴Apache我們的資源庫所在的路徑,可以通過Location指令來完成這個設置。因為不希望為每個單獨的項目都進行單獨的設置,所以我們把所有項目都存放在統一的資源庫目錄,那么可以使用SVNParentPath指令來指定存放所有項目的路徑。在httpd.conf文件最后添加下面配置:
#SVN
DAVsvn
SVNParentPath"F:/SubversionFiles"
這樣我們就可以通過http://myhost:8080/svn/<項目名>來訪問存放于資源庫F:/SubversionFiles中的指定項目。當然有可能你并不希望某個項目提供這樣一種訪問方式,這時候你可以使用SVNPath為每個項目進行單獨的設置,SVNPath的使用方法如下:
DAVsvn
SVNPath"F:/SubversionFiles/project1"
同樣把這段配置放在httpd.conf最后,重啟ApacheHTTP服務即可通過http://myhost:8080/svn/project1來訪問project1項目的資源庫。請期待下節SVN管理介紹。
【編輯推薦】