• 文件服务器 之 Debian下配置使用Subversion版本控制服务器


    作者: achaoge
    来自:www.linuxsir.org
    摘要:就像大多数软件的安装和配置一样,Debian下面配置和使用Subversion也是非常的方便。现以使用apache2+mod_svn的方式加以说明。

    假定条件:
    我们将我们所有的项目都放在/var/lib/svn目录下,
    我们要创建foo这个项目,
    项目的使用人员有张三(zhangs)和李四(lis),
    张三(zhangs)是领导,只负责审查审查(只读),不用修改,
    李四(lis)是苦工,什么都要干(读写)。

    1,首先当然是安装apache2和subversion。

    apt-get install libapache2-svn apache2-mpm-prefork subversion

    (这儿选用apache2-mpm-prefork的理由是当前在Debian中只有这个版本可以使用php4)

    2,创建一个项目

    svnadmin create /var/lib/svn/foo

    因为我们是要由apache2来提供服务,所以将目录权限改成是apache2运行时用户www-data:

    chown www-data.www-data /var/lib/svn/foo -R

    3,配置apache2
    编辑/etc/apache2/mods-available/dav_svn.conf,使之如下:

    # dav_svn.conf - Example Subversion/Apache configuration
    #
    # For details and further options see the Apache user manual.
    # <Location URL> ... </Location>
    # URL controls how the repository appears to the outside world.
    # In this example clients access the repository as http://hostname/svn/repos
    <Location /svn>
      # uncomment this to enable the repository
       DAV svn
      # set this to the path to your repository
       SVNParentPath /var/lib/svn
       SVNIndexXSLT "/svnindex.xsl"
      # The following allows for basic http authentication. Basic authentication
      # should not be considered secure for any particularly rigorous definition of
      # secure.
      # to create a passwd file
      # # rm -f /etc/apache2/dav_svn.passwd
      # # htpasswd2 -c /etc/apache2/dav_svn.passwd dwhedon
      # New password:
      # Re-type new password:
      # Adding password for user dwhedon
      # #
      # Uncomment the following 3 lines to enable Basic Authentication
       AuthType Basic
       AuthName "Subversion Repository"
      # AuthLDAPEnabled on
      # AuthLDAPURL ldap://localhost/ou=Users,dc=sczfcpa,dc=com?uid?one
       AuthUserFile /etc/apache2/dav_svn.passwd
      # Uncomment the following line to enable Authz Authentication
       AuthzSVNAccessFile /etc/apache2/dav_svn.authz
      # Uncomment the following three lines allow anonymous read, but make
      # committers authenticate themselves
      # <LimitExcept GET PROPFIND OPTIONS REPORT>
        Require valid-user
      # </LimitExcept>
    </Location>

    修改访问权限的配置文件/etc/apache2/dav_svn.authz(/etc/apache2/mods-available/dav_svn.conf指定的),使之如下:

    [foo:/]
    * =
    zhangs = r
    lis = rw

    然后在添加用户到 /etc/apache2/dav_svn.passwd

    htpasswd2 -c /etc/apache2/dav_svn.passwd zhangs
    (输入密码)
    htpasswd2 -c /etc/apache2/dav_svn.passwd lis
    (输入密码)

    apache2的监听端口在 /etc/apache2/ports.conf 里面设置,我设置的81,这样可以不影响现有的apache 1.3

    现在可以试试用 http://localhost:81/svn/foo 来访问了。

    参考文档:
    Subversion book 的中文翻译文档 http://freebsd.sinica.edu.tw/~plasma/svnbook ,感谢对岸的同胞为中文的贡献
    subversion book 的英文文档 (暂时找不到了,安装subversion后在/usr/share/doc/subversion/book/book.html)

  • 相关阅读:
    vscode settings
    AutomaticPrefetchPlugin
    echarts 文字超长换行
    webpack篇(三):serve启动 打印台友好提示
    webpack篇(二):webpack 5 (变化)
    webpack篇(一):webpack 5 热更新体验
    面试(保存一些面试相关的网址链接,方便之后复习)
    路由传递参数的常见的两种形式
    组件缓存注意事项 ---keep-alive
    从css属性和布局来说明一下,行类元素和行类块元素和块元素的区别
  • 原文地址:https://www.cnblogs.com/licheng/p/1050040.html
Copyright © 2020-2023  润新知