[原创]在windows下搭建基于apache的SVN环境
[原創]在windows下搭建基于apache的SVN環境
?
?
1 軟件下載:
在http://httpd.apache.org/download.cgi,下載:
apache_2.2.14-win32-x86-openssl-0.9.8k.msi
在 http://subversion.tigris.org/,下載:
Setup-Subversion-1.6.6.msi
在http://tortoisesvn.net/downloads,下載:
LanguagePack_1.6.3.16613-win32-zh_CN.msi
TortoiseSVN-1.6.3.16613-win32-svn-1.6.3.msi
備注:apache與svn安裝時,需要注意一點版本是否兼容,注意查下版本匹配情況;
2 安裝apache
安裝apache 按照提示安裝,可以自定義安裝目錄,如我安裝在D:\Program Files\Apache下;
修改apache端口,在D:\Program Files\Apache\conf下的httpd.conf將listen 80 更改為listen 8000,保存,然后重啟apache
檢查apache是否安裝成,訪問http://localhost:8000,如果顯示”it works”則表明安裝成功;
?
備注:默認情況下apache是80端口,但是80端口經常會讓其它服務占用,建議最好更改訪問端口
3 安裝svn服務端
?安裝svn服務端,按照提示安裝,可以自定義安裝目錄,如我安裝在D:\Program Files\Svn下;
?
4 安裝svn客戶端及漢化包
?安裝svn安戶端及漢化包,按照提示安裝即可,如我安裝在D:\Program Files\TortoiseSVN
?
5 集成svn和apache
??將Svn環境下bin目錄中的mod_dav_svn.so和mod_authz_svn.so復制到Apache環境下modules目錄下;
?配置apache環境下的httpd.conf,去掉前面的#號;
#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
?
將下面幾行添加到LoadModule部分的最后,注意svn的環境目錄更改,需符號要求;
LoadModule dav_svn_module "d:/Program Files/svn/bin/mod_dav_svn.so"??
LoadModule authz_svn_module "d:/Program Files/svn/bin/mod_authz_svn.so"
?保存重啟下apache,可以看到如下圖所示:
?
6 配置apache和svn,讓apache告訴svn如何工作
以下是我的具體配置情況可以參考下
<Location /svn>?
#引用遠程訪問模塊
DAV svn???
?
#版本庫路徑
SVNListParentPath on
SVNParentPath?? d:/Svn/Project
?
#激活基本認證,就是用戶名/密碼
AuthType Basic
?
#用來說明何時彈出要求用戶輸入認證信息的認證對話框
AuthName "Subversion repositories"
?
#指定使用的認證密碼文件
AuthUserFile d:/Svn/conf/passwd.ini??
?
#位置Subversion版本庫的訪問控制文件的路徑
AuthzSVNAccessFile d:/Svn/conf/authz.ini
?
#指定只有輸入了正確的用戶/密碼的用戶可以訪問URL
Require valid-user
</Location>
?
更為詳細的解釋設置 Apache 的 httpd.conf
| 設置 | 解釋 |
| <Location /svn> | 意思是Subversion版本庫的URL是http://MyServer/svn/ |
| DAV svn | 告訴Apache是哪個模塊響應那個URL的請求-此刻是Subversion模塊。 |
| SVNListParentPath on | 對于Subversion1.3或者更高版本,這個指示表示顯示所有SVNParentPath下的版本庫。 |
| SVNParentPath D:\SVN | 告訴Subversion需要查看的版本庫位于D:\SVN之下 |
| SVNIndexXSLT "/svnindex.xsl" | 使用它可以在用瀏覽器瀏覽時更好看。 |
| AuthType Basic | 激活基本認證,就是用戶名/密碼 |
| AuthName "Subversion repositories" | 用來說明何時彈出要求用戶輸入認證信息的認證對話框 |
| AuthUserFile passwd | 指定使用的認證密碼文件 |
| AuthzSVNAccessFile | 位置Subversion版本庫的訪問控制文件的路徑 |
| Require valid-user | 指定只有輸入了正確的用戶/密碼的用戶可以訪問URL |
?
?
7 創建passwd文件來管理svn的訪問權限
在開始菜單下,“運行”輸入cmd,然后切換到apache/bin目錄下:
?
?
?第1個用戶創建時用:htpasswd -c D:\svn\conf\passwd.ini yb.ma //其中passwd.ini為文件名,yb.ma為用戶帳號
?
第2個用戶創建時用:htpasswd D:\svn\conf\passwd.ini y.fan
?
?
可以找到具體的目錄查看,如下圖所示,驗證是否創建成功:
?
8?SVN版本庫及登錄訪問權限設置
在 D:\Svn\Project\目錄下創建test1文件,然后通過svn客戶端右鍵在此創建版本庫;
將會得到如下效果圖,則表明創建成功:
?
?
在D:\Svn\TempProjcet\test1創建如下配置庫目錄結構圖,如我創建如下(可以根據自己實際情況定制)
?
導入配置庫結構到版本庫中,如右鍵導入,填寫具體的地址:
?
備注:要導入的版本庫必須在authz.ini文件中配置
?
?在D:\Svn\conf創建authz.ini文件,然后文件中填寫如下設置
?#建立分組:admin, developer,pm,testers
[groups]
admin=yb.ma
pm=yb.ma
developers=yb.ma??
testers=yb.ma
?
#預置設置
[/]
*=r
@admin=rw
dangerman=
?
#多個項目配置,一級目錄權限
[test1:/]
@developers=rw
?
#branches二級目錄權限
[/branches]
@testers=r
@developers=rw
?
#tags二級目錄權限
[/tags]
@admin=rw
@pm=rw
?
#trunk二級目錄權限
[/trunk]
@admin=rw
@developers=rw
?
轉載于:https://www.cnblogs.com/mayingbao/archive/2010/06/10/1755757.html
總結
以上是生活随笔為你收集整理的[原创]在windows下搭建基于apache的SVN环境的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python自动化测试-D6-学习笔记之
- 下一篇: Java回调函数callback