OpenSUSE 11.4 + SVN + Apache2

来源:互联网 发布:软件测试报告范文 编辑:程序博客网 时间:2024/06/05 20:04

【原文】 http://www.voidseer.com/DeveloperBlogs/MichaelWojcik/?page_id=33 


创建svn用户组?

$> sudo /usr/sbin/groupadd -r svn

$> sudo /usr/sbin/useradd -r -g svn -d /srv/svn -s /bin/false svn


创建svn目录并修改权限

$> sudo svnadmin create /home/svn/repos0

$> sudo chown svn:svn /home/svn/repos0

$> sudo chmod -R g+rws repos0                          // 否则 svn import 出现“svn: Can't open file '/home/svn/repos0/db/txn-current-lock': Permission denie”


结果应该为: 

drwxr-xr-x 6 wwwrun www 4096 Nov 24 13:46 repos0


配置httpd.conf

$> sudo vim /etc/apache2/httpd.conf

Add lines after "Include /etc/apache2/sysconfig.d/loadmodule.conf":

# add 3 lines
LoadModule dav_module    /usr/lib/apache2/mod_dav.so
LoadModule dav_svn_module /usr/lib/apache2/mod_dav_svn.so
LoadModule authz_svn_module  /usr/lib/apache2/mod_authz_svn.so


At the very end, at the following section: 

<Location /repos/repos0>
        DAV svn
        SVNPath /home/svn/repos0
        #SVNIndexXSLT "/svnindex.xsl"
        AuthType Basic
        AuthName "Voidseer repositories"
        AuthUserFile /etc/svn-auth-file
        Require valid-user
</Location>


创建授权访问文件

Type the following command to both create the file and authentication data:

#> htpasswd2 -cm /etc/svn-auth-file ‘username’ // 创建文件并增加名为username的用户

#> htpasswd2 -m /etc/svn-auth-file ‘svn’   // 增加名为svn的用户


使用:

1. shell command

$> svnserve -d -R /home/svn

$> svn list svn://localhost/repos0


2. Browser

http://localhost/repos/repos0


 配置svn://localhost/访问

1. 确保repos文件夹权限为:

drwxrwsr-x 7 svn svn 4096 Nov 25 14:27 repos0

2. 配置svnserve访问授权

drtwox@server:~$ vim svn/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = projects

drtwox@server:~$ vim svn/conf/passwd
[users]
drtwox = password

drtwox@server:~$ vim svn/conf/authz
[projects:/home/drtwox/svn]
drtwox = rw


3. 使用

$> svn list svn://localhost/repos0

$> svn import share_memory svn://localhost/repos0/shared_memory -m "initial" --username svn





原创粉丝点击