一.相关下载
   svn-1.4.0   apache_2.0.55-win32-x86-no_ssl   mod_auth_mysql-2.0.49-w32.zip   site-1.0.4.zip(subclipse用于eclipse3.1.x)   site-1.2.2.zip(subclipse用于eclipse3.2.x)   TortoiseSVN-1.4.0.7501-win32-svn-1.4.0.msi  二.安装配置
 首先安装apache,安装过程中会提示填写ServerName等,有的话就填,没有的话就写上IP,我填的是localhost.
 安装完apache,如果没有出错的话ApacheMonitor会出现在系统任务栏,并显示已运行状态. 
 安装svn-1.4.0,安装过程中svn会检测到系统中已经运行apache,apache会在期间自动重新启动,
 ApacheMonitor的状态栏也会自动改为"Apache/2.0.55(Win32) SVN/1.4.0 DAV/2",说明svn安装成功. 
 如果apache和svn没有自动集成成功,也可以手动修改apache httpd.conf文件如下3步:
  1.找到以下两行:
   #LoadModule dav_module modules/mod_dav.so
   #LoadModule dav_fs_module modules/mod_dav_fs.so

 
   改为:
   LoadModule dav_module modules/mod_dav.so
   #LoadModule dav_fs_module modules/mod_dav_fs.so(网上很多说法是把这一行也去掉#注释,但好像并非必须去掉.)

  2.添加以下两行:
   LoadModule dav_svn_module "C:/Program Files/Subversion/bin/mod_dav_svn.so"
   LoadModule authz_svn_module "C:/Program Files/Subversion/bin/mod_authz_svn.so"
   # "C:/Program Files/Subversion"是Subversion的安装目录

  3.在httpd.conf的最后添加如下内容:
   <Location /svn>
      DAV svn
      SVNParentPath "E:/svndemo"
      # SVNParentPath指向svn资源库的上一级目录
      # SVNPath "E:/svndemo/repository"
      # SVNPath指向svn资源库目录
      # 使用SVNParentPath或SVNPath根据相应需求
      # 关于如何创建svn资源库目录在本文最后有补充
   </Location>

  现在已经可以通过http://localhost:8080/svn/repository/来访问资源库了.
三.使用apache身份验证
 使用apache身份验证就要使用apache的htpasswd.exe命令生成密码文件,示例如下:
  命令行下执行:htpasswd –c E:\svndemo\svn_auth_passwd plmm
  参数-c创建密码文件svn_auth_passwd并添加用户plmm,然后会提示输入密码.
  继续添加用户:htpasswd -m E:\svndemo\svn_auth_passwd klmm
  参数-m在已有的密码文件中添加新用户klmm,并用MD5加密密码.
  这样就创建了一个密码文件添加了两个用户.
 修改apache httpd.conf文件,添加如下内容:
  <Location /svn>
     DAV svn
     SVNParentPath "E:/svndemo"
    
     AuthType Basic
     AuthName "Subversion repository"
     Require valid-user
     AuthUserFile "E:/svndemo/svn_auth_passwd"
     # AuthUserFile指向密码文件
  </Location>

 现在通过http://localhost:8080/svn/repository/访问资源库需要输入用户名密码.
四.结合mysql实现身份验证
 1.解压上面下载的mod_auth_mysql-2.0.49-w32.zip文件,拷贝mod_auth_mysql.so文件至apache下modules目录.
 2.修改apache httpd.conf文件,添加如下内容:
   使apache加载mysql身份验证模块:
    LoadModule mysql_auth_module modules/mod_auth_mysql.so

   配置apache用来验证用户名密码的数据库表:
   <Location /svn>
      DAV svn
      SVNParentPath "E:/svndemo"
    
      AuthType Basic
      AuthName "Subversion repository"
      #AuthUserFile "E:/svndemo/svn_auth_passwd"
      Require valid-user
  
      AuthMySQLHost localhost
      AuthMySQLUser root
      # AuthMySQLUser 数据库登陆用户名
      # AuthMySQLPassword 1234
      AuthMySQLDB svn
      # AuthMySQLDB 数据库名
      AuthMySQLUserTable users
      # AuthMySQLUserTable 数据库表名
      AuthMySQLNameField user_name
      # AuthMySQLNameField 用户名字段
      AuthMySQLPasswordField user_passwd
      # AuthMySQLPasswordField 密码字段
      # AuthMySQLMD5Passwords On
      AuthMySQLCryptedPasswords Off
   </Location>

 3.重启apache,现在通过http://localhost:8080/svn/repository/访问资源库需要输入mysql表中的用户名密码.
五.相关命令
 安装apache服务:apache -k install
 卸载apache服务:apache -k uninstall
 启动apache服务:apache -k start或net start Apache2
 停止apache服务:apache -k stop 或net stop Apache2 
 svn创建资源库:svnadmin create E:\svndemo\repository
 启动资源库服务:svnserve -d -r E:\svndemo\repository 
 拷贝my.ini到c:\winnt
 安装MySQL服务:mysqld-nt -install
 启动MySQL服务:net start mysql
 停止MySQL服务:net stop mysql
 卸载MySQL服务:mysqld-nt -remove