Windows環境下安裝SVN
1. 安裝apache
a) 軟體版本:apache_2.0.63-win32-x86-no_ssl.msi,subversion至少需要Apache版本 2.0.48 ;
b) 下載下傳URL:http://httpd.apache.org/download.cgi
c) 測試頁面:
i. For all users, on Port 80, as a service: http://localhost
ii. Only for current user, on Port 8080, when started manually: http://localhost:8080
2. 安裝subversion
a) 軟體版本:svn- 1.4.5 -setup.exe
b) 下載下傳URL:http://subversion.tigris.org/project_packages.html
c) 将c:/program files/subversion/bin目錄中的mod_authz_svn.so和mod_dav_svn.so拷貝到c:/program files/apche group/apache2/modules目錄下
d) 将c:/program files/subversion/bin目錄中的libdb44.dll拷貝到c:/program files/apche group/apache2/bin目錄下
3. 建立項目倉庫
mkdir d:/svn-repos
cd svn-repos
svnadmin create d:/svn-repos
4. 導入初始測試檔案
cd testdir
svn import –m”注釋” . file:///d:/svn-repos/ProjectName/trunk
5. 配置apache
a) 編輯apache配置檔案httpd.conf,在”Dynamic Shared Object(DSO) Support”節下,添加兩行:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
b) 取消dav_module那行的注釋:
LoadModule dav_module modules/mod_dav.so
c) 在檔案底部,添加以下内容:
<Location /svn-repos>
DAV svn
SVNPath d:/svn-repos
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile d:/svn-repos/conf/htpasswd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
說明:c)中文字告訴apache有/svn-repos開頭的URL應該使用subversion DAV子產品并且這個項目倉庫位于d:/svn-repos;下面内容關系到使用者授權,其中htpasswd中存放使用者名和密碼,通過apahce2/bin中htpasswd指令建立,LimitExcept節表明允許匿名使用者隻讀通路,其餘使用者必須輸入密碼。
d) 使用htpasswd建立授權檔案如下:
C:/Program Files/Apache Group/Apache2/bin>htpasswd –c –m d:/svn-repos/conf/htpasswd robin
New password: ***
Re-type new password: ***
Adding password for user robin
添加新的使用者,取消-c選項即可:
C:/Program Files/Apache Group/Apache2/bin>htpasswd -m d:/svn-repos/conf/htpasswd tracy
New password: ***
Re-type new password: ***
Adding password for user tracy
得到的htpasswd檔案内容如下:
robin:$apr1$eG1.....$60Y7BbaPlCb6flcmhK1W21
tracy:$apr1$SE1.....$xPgZixHR2w/iGEbY0FN2o/
6. 重新開機apache
7. For all users, on Port 80, as a service: web通路http://localhost/svn-repos
8. Only for current user: web通路http://localhost:8080/svn-repos
9. 注意防毒軟體對端口的保護,卡巴需要打開http的80端口。
10. checkout工作項目
a) 指令行方式:svn co http://127.0.0.1/svn-repos/ProjectName/trunk project
b) 指令行方式:svn co file:///d:/svn-repos/ProjectName/trunk project
c) 使用TortoiseSVN界面工具
關于Subversion學習的小結,會有後續的文檔說明。