安装配置Subversion和Apache

1.准备
  apache_2.2.14-win32-x86-no_ssl.msi
  Setup-Subversion-1.6.6.msi
  TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi
  SVNService.zip

2.安装apache
  双击开始安装:
  NetDomain,Server Name根据自己的条件选择
  Administrator's Email填写管理员的邮箱,这样系统有问题的时候别人可以找到你。
  选中For All Users,on Port 80,as a service - Recommanded,然后Next
  (比如)安装目录选择在c:\Program File\Apache Software Foundation\Apache2.2

  如果之前的安装顺利,那么在http://127.0.0.1/ 可以看到It works!的页面了。说明Apache已经正常安装好了。
  【可能遇到的问题】
  如果不能,检查apache service是否启动,如果apache service不能正常启动,用Test configuration 查明原因,比如80端口被占用,
  去c:\Program File\Apache Software Foundation\Apache2.2\conf\htpd.conf 将80换成8082.然后start apache service.
  再http://127.0.0.1:8082/访问

3.安装Subversion
  注意选择Binding for Apache 2.2.x,
  安装目录选择在c:\Program File\Subversion
  测试Subversion是否正常安装:
    a.建立文件夹D:\svn,在D:\svn中创建子文件夹svn_repository作为repository

    b.在cmd中运行命令:c:\Program File\Subversion\bin\svnadmin.exe create D:\svn\svn_repository 创建版本库,默认为文件系统模式。

      此时应该在D:\svn\svn_repository 目录下生成一系列文件,说明创建成功。

    c.运行命令:c:\Program File\Subversion\bin\svnserve.exe -d -r D:\svn\svn_repository 启动Subversion

    d.使用SVN命令测试Subversion是否启动好,新开一个cmd,运行命令:svn info svn://127.0.0.1/ 如果打印出subversion的一些路径版本等

      信息则说明以上安装成功。

    e.基本权限设置
      修改D:\svn\svn_repository\conf目录下的三个文件:
      svnserve.conf文件把
      #anon-access = read
      #auth-access = write
      #password-db = passwd
      #authz-db = authz
      这四行的#去掉。
      passwd文件后面添加:
      admin = 123
      authz文件后面添加:
      [/]
      * = r
      admin = rw

      这样我们就得到了一个可以具有读写权限的admin:123的帐号,在cmd窗口中ctrl+c 停止svnserve.exe
      运行命令:c:\Program File\Subversion\bin\svnserve.exe -d -r D:\svn\svn_repository  并重新运行。
      【可能遇到的问题】
      运行svn info svn://127.0.0.1/ 提示“svn:认证失败”,去掉svnserve.conf文件的一下三行
      anon-access = read
      auth-access = write
      password-db = passwd
      的开头部分的空格。

    f.将subversion 启动设为服务随机启动
      解压SVNService.zip,将解压出的SVNService.exe 拷贝到c:\Program File\Subversion\bin
      在cmd中运行命令: c:\Program File\Subversion\bin\svnservice -install --daemon --root "D:\svn\svn_repository"
      去 Control Panel > Administrative Tools > Services, 双击 SVNService service, 将启动方式设为 automatic. 然后启动服务。

4.apache控制svn的访问。
  首先停止c:\Program File\Subversion\bin\svnserve.exe -d -r D:\svn\svn_repository进程,
  因为我们通过apache来访问subversion,而不再通过svnserve来访问。

  修改c:\Program File\Apache Software Foundation\Apache2.2\conf\httpd.conf文件
  取消
  #LoadModule dav_module modules/mod_dav.so
  #LoadModule dav_fs_module modules/mod_dav_fs.so
  前面的#.
  在这一部分的后面添加
  LoadModule dav_svn_module c:/Program File/Subversion/bin/mod_dav_svn.so
  LoadModule authz_svn_module c:/Program File/Subversion/bin/mod_authz_svn.so
  或者
  将c:/Program File/Subversion/bin/mod_dav_svn.so 拷贝到c:\Program File\Apache Software Foundation\Apache2.2\modules
  将c:/Program File/Subversion/bin/mod_authz_svn.so 拷贝到c:\Program File\Apache Software Foundation\Apache2.2\modules
  在这一部分的后面添加
  LoadModule dav_svn_module modules/mod_dav_svn.so
  LoadModule authz_svn_module modules/mod_authz_svn.so

  在文件的最后添加:
  <Location /svn>
      DAV svn  
      SVNListParentPath on
      SVNParentPath D:\svn
      AuthType Basic
      AuthName "Subversion repositories"
      AuthUserFile c:\Program File\Apache Software Foundation\Apache2.2\passwd
      #AuthzSVNAccessFile c:\Program File\Apache Software Foundation\Apache2.2\svnaccessfile
      Require valid-user
  </Location>

  然后在目录c:\Program File\Apache Software Foundation\Apache2.2中使用
  bin\htpasswd.exe -cm passwd admin
  bin\htpasswd.exe -m passwd user1
  来创建帐号admin和user1密码分123,321
  此时:
  访问http://127.0.0.1:8082/svn/,在弹出框中输入用户名和密码。就会看到svn_repository的目录。
  现在我们完成了apache对于svn的访问。

5.对于权限的控制:

  在c:\Program File\Apache Software Foundation\Apache2.2\conf\httpd.conf的最后去掉

  #AuthzSVNAccessFile c:\Program File\Apache Software Foundation\Apache2.2\svnaccessfile前面的#。

  c:\Program File\Apache Software Foundation\Apache2.2\svnaccessfile的内容如下:
  [groups]
  admin = admin
  users = user1
  anonym= dd
  [/]

  @admin = rw

  @users = r

  @anonym =
  上面的内容表示任何人可读,admin组可写,anonym组无任何权限。

此文档参考过
http://hi.baidu.com/gzguoer/blog/item/6a59ad0e0383e5e136d122b8.html
http://www.robgonda.com/blog/index.cfm/2005/7/7/Subversion-up-and-running-in-30-minutes-or-less

你可能感兴趣的:(subversion)