• UBUNTU SVN 服务器配置


    安装

    1 $ sudo apt-get install apache2
    2 $ sudo apt-get install subversion
    3 $ sudo apt-get install libapache2-svn

    创建 SVN 仓库

    许多位置都可以放置 Subversion 文件仓库,其中两个最常用的是:/usr/local/svn 以及 /home/svn。为了在下面的描述中简单明了,我们假设您的 Subversion 文件仓库放在 /home/svn,并且你的项目名称是简单的“myproject”。

    同样的,也有许多常用的方式设置文件仓库的访问权限。然而,这也是安装过程中最经常出现错误的地方,因此我们会对此进行一个详细说明。通常的情况下,您应该创建一个名为“Subversion”的用户组,该组是SVN仓库所在的目录的拥有者。下面是一个快速的操作说明,有关内容请参考相关文档的详细说明:

    1 $ sudo addgroup subversion
    2 $ sudo usermod -G subversion -a www-data

    现在执行下面的命令

    1 $ sudo mkdir /home/svn
    2 $ cd /home/svn
    3 $ sudo mkdir myproject
    4 $ sudo chown -R root:subversion myproject

    下面的命令用于创建 SVN 文件仓库

    1 $ sudo svnadmin create /home/svn/myproject

    赋予组成员对所有新加入文件仓库的文件拥有相应的权限

    1 $ sudo chmod -R g+rws myproject


    通过WebDAV协议访问(http://)

    要通过 WebDAV 协议访问 SVN 文件仓库,必须配置您的 Apache 2 Web 服务器。必须加入下面的代码片段到 /etc/apache2/mods-available/dav_svn.conf中:

     1 <Location /svn>
     2 DAV svn
     3 SVNParentPath /home/svn
     4 AuthType Basic
     5 AuthName "myproject subversion repository"
     6 AuthUserFile /home/svn/conf/passwd
     7 AuthzSVNAccessFile /home/svn/conf/authz
     8 #<LimitExcept GET PROPFIND OPTIONS REPORT>
     9 Require valid-user
    10 #</LimitExcept>
    11 </Location>

    如果需要用户每次登录时都进行用户密码验证,请将<LimitExcept GET PROPFIND OPTIONS REPORT>与</LimitExcept>两行注释掉。

    当您添加了上面的内容,您必须重新起动 Apache 2 Web 服务器,请输入下面的命令:

    1 $ sudo /etc/init.d/apache2 restart

    接下来,您需要创建 /etc/subversion/passwd 文件,该文件包含了用户授权的详细信息。要添加用户,您可以执行下面的命令:

    添加用户
    $ sudo htpasswd /home/svn/conf/passwd user_name
    添加用户并重新生成 passwd 文件,如果 passwd 文件存在将会删除原文件
    $ sudo htpasswd -c /home/svn/conf/passwd user_name

    它会提示您输入密码,当您输入了密码,该用户就建立了。“-c”选项表示创建新的/home/svn/conf/passwd文件,所以user_name所指的用户将是文件中唯一的用户。如果要添加其他用户,则去掉“-c”选项即可

    AUTHZ 权限管理

    [groups]
    admin = user1, user2
    
    [proj-0:/]
    @admin = r
    user3 = rw
    
    [proj-1:/]
    user1 = rw
    
    [proj-1:/path/]
    user3 = rw

    补充:svnserve 服务的部署及使用

    在创建完代码仓库后,需要修改其 conf/svnserve.conf 如下:

    [general]
    anon-access = none   # 不修改此选项会导致获取不了 svn 日志
    password-db = ../../conf/passwd
    authz-db = ../../conf/authz

    passwd 文件格式

    [users]
    username = passwd

    authz 文件格式同上

    启动 svnserve 服务

    svnserve -d -r /home/svn   # 可以把这行脚本添加至  /etc/rc.local 中,系统启动后将自动启动 svn 服务 

    配置完成后可通过 svn:/192.168.1.6/project  来访问

  • 相关阅读:
    自定义Listview
    android ListView嵌套GridView显示不全问题
    Android-Universal-Image-Loader 图片异步加载类库的使用(超详细配置)
    android service被系统回收的解决方法
    android Activity基类通用方法
    用 FragmentManager 替换时使用 GoogleMaps 崩溃 app
    Gulp 从0开始
    面试题 之 全排列
    面试题之 query转为obj
    this .运算符 和 [] 运算符
  • 原文地址:https://www.cnblogs.com/ouuy/p/2473706.html
Copyright © 2020-2023  润新知