一、安装SVN1.5服务器端软件
下载 CollabNetSubversion-server-1.5.0-23.win32.exe(自己在网上找吧)
按照默认设置安装即可,Apache的端口建议使用8090
重启电脑
开始-》运行services.msc,查看一下服务,确认以下服务已经启动:
Apache2.2 和 Subversion Server
 
二、在D盘新建一个文件夹SVN,并在SVN文件夹下新建2个文件:passwords.auth和access.auth
 
三、修改电脑环境变量中系统变量中的path,在后面添加“;C:\Program Files\CollabNet Subversion Server\httpd\bin”,这样就可以运行一些命令了
==================================以下分2种情况=============================================
1】只有一个版本库
四、修改配置文件
打开C:\Program Files\CollabNet Subversion Server\httpd\conf\httpd.conf 文件
1)在:LoadModule dav_svn_module     modules/mod_dav_svn.so(应该是第116行)
下面增加:
LoadModule authz_svn_module   modules/mod_authz_svn.so
2)找到如下代码
<Location /svn>
   DAV svn
   SVNParentPath C:\svn_repository
</Location>
修改为:
<Location /svn>
DAV svn
SVNPath D:/SVN/files
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile D:/SVN/passwords.auth
AuthzSVNAccessFile D:/SVN/access.auth
Require valid-user
</Location>
五、进行用户设置
开始-》运行cmd,打开命令窗口
1) 运行:svnadmin create D:\SVN\files
这个命令是新建版本库
2) 运行: htpasswd -m D:\SVN\passwords.auth admin
提示输入密码,也输入admin
3) 运行: htpasswd -m D:\SVN\passwords.auth test1
提示输入密码,也输入test1
4) 运行: htpasswd -m D:\SVN\passwords.auth test2
提示输入密码,也输入test2
六、进行权限设置
打开D:\SVN\access.auth
添加如下内容:
[groups]
Manager=admin
Dev1=test1
Dev2=test2
 
[/]
@Manager=rw
*=r
注意:如果里面的文件夹是中文名称,需要将access.auth文件进行ASCII->UTF-8格式的转换(可以通过UltraEdit进行操作,选择文件-》格式转换-》ASCII转换为UTF-8)
七、重启Apache
八、用客户端工具TortoiseSVN checkout: http://localhost:8090/svn,输入用户名admin和密码admin,
在里面新建2个文件夹aaa和bbb,然后提交
九、再打开D:\SVN\access.auth,在后面添加如下代码:
[/aaa]
@Dev1=rw
*=r
 
[/bbb]
@Dev2=rw
*=r
十、重启Apache
此时,admin就没有对aaa和bbb进行写操作的权限了,相应的test1对aaa,test2对bbb有写权限。但admin可以在根目录下面进行写操作包括新建文件夹。
2】有多个版本库
四、修改配置文件
打开C:\Program Files\CollabNet Subversion Server\httpd\conf\httpd.conf 文件
1)在:LoadModule dav_svn_module     modules/mod_dav_svn.so(应该是第116行)
下面增加:
LoadModule authz_svn_module   modules/mod_authz_svn.so
2)找到如下代码
<Location /svn>
   DAV svn
   SVNParentPath C:\svn_repository
</Location>
修改为:
<Location /svn>
DAV svn
SVNParentPath D:/SVN
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile D:/SVN/passwords.auth
AuthzSVNAccessFile D:/SVN/access.auth
Require valid-user
</Location>
五、进行用户设置
开始-》运行cmd,打开命令窗口
5) 运行:svnadmin create D:\SVN\banben1
6) 运行:svnadmin create D:\SVN\banben2
这个命令是新建2个版本库
7) 运行: htpasswd -m D:\SVN\passwords.auth admin
提示输入密码,也输入admin
8) 运行: htpasswd -m D:\SVN\passwords.auth test1
提示输入密码,也输入test1
9) 运行: htpasswd -m D:\SVN\passwords.auth test2
提示输入密码,也输入test2
六、进行权限设置
打开D:\SVN\access.auth
添加如下内容:
[groups]
Manager=admin
Dev1=test1
Dev2=test2
 
[/]
@Manager=rw
*=r
七、重启Apache
九、打开D:\SVN\access.auth,在后面添加如下代码:
[banben1:/]
@Manager=rw
*=r
[banben1:/aaa]
@Dev1=rw
*=r
[banben2:/]
@Manager=rw
*=r
[banben2:/bbb]
@Dev2=rw
*=r
注意:如果里面的文件夹是中文名称,需要将access.auth文件进行ASCII->UTF-8格式的转换(可以通过UltraEdit进行操作,选择文件-》格式转换-》ASCII转换为UTF-8)
十、重启Apache
此时,admin就没有对banben1的aaa和banben2的bbb进行写操作的权限了,相应的test1对banben1的aaa,test2对banben2的bbb有写权限。但admin可以在根目录、banben1和banben2下面进行写操作包括新建文件夹。
==============================================================
备注:参考文档
1)CollabNet Subversion-server-1.5.0在windows下的安装配置的注意事项
2)Apache2.2.9+Subversion1.4.6在windows下的配置与权限设置