读书人

subversion装配及与apache整合

发布时间: 2012-07-04 19:33:55 作者: rapoo

subversion安装及与apache整合

Install SVN (Subversion) Server on Fedora 16/15, CentOS/Red Hat (RHEL) 6.2/5.8

Updated by JR on Apr 19, 2012 in CentOS, Featured, Fedora, Linux, Most Popular, Programming, Programs, Red Hat (RHEL), Servers, Version Control | 131 comments

Do you like this?

Tweet

10

This is guide, howto install SVN (Subversion) server on Fedora 16/15/14/13, CentOS 6.2/6.1/6/5.8, Red Hat (RHEL) 6.2/6.1/6/5.8.

What is SVN (Subversion)?

Subversion is a free/open-source version control system. Subversion manages files and directories, and the changes made to them, over time. This allows you to recover older versions of your data, or examine the history of how your data changed. In this regard, many people think of a version control system as a sort of “time machine”.

Install SVN (Subversion) Server on Fedora 16/15/14/13, CentOS 6.2/6.1/6/5.8, Red Hat (RHEL) 6.2/6.1/6/5.8

1. Change root user

su -

## OR ##

sudo -i

2. Install needed packages (mod_dav_svn and subversion)

yum install mod_dav_svn subversion

Note: If you don’t have Apache installed already, this command installs it also. Read more about installing Apache and PHP >>

3. Modify Subversion config file /etc/httpd/conf.d/subversion.conf

Add following config to /etc/httpd/conf.d/subversion.conf file:

LoadModule dav_svn_module???? modules/mod_dav_svn.so

LoadModule authz_svn_module?? modules/mod_authz_svn.so

?

<Location /svn>

?? DAV svn

?? SVNParentPath /var/www/svn

?? AuthType Basic

?? AuthName "Subversion repositories"

?? AuthUserFile /etc/svn-auth-users

?? Require valid-user

</Location>

Read more SVN Access Control >>

4. Add SVN (Subversion) users

Use following command:

## Create testuser ##

htpasswd -cm /etc/svn-auth-users testuser

New password:

Re-type new password:

Adding password for user testuser

?

## Create testuser2 ##

htpasswd -m /etc/svn-auth-users testuser2

New password:

Re-type new password:

Adding password for user testuser2

Note: Use exactly same file and path name as used on subversion.conf file. This example use /etc/svn-auth-users file.

Read more SVN Access Control >>

5. Create and configure SVN repository

mkdir /var/www/svn

cd /var/www/svn

?

svnadmin create testrepo

chown -R apache.apache testrepo

?

chcon -R -t httpd_sys_content_t /var/www/svn/testrepo

?

## Following enables commits over http ##

chcon -R -t httpd_sys_rw_content_t /var/www/svn/testrepo

Restart Apache:

/etc/init.d/httpd restart

## OR ##

service httpd restart

Goto http://localhost/svn/testrepo address and you should see something like following, write username and password:

SVN testrepo revision 0:

6. Configure repository

To disable anonymous access and enable access control add following rows to testrepo/conf/svnserve.conf file:

## Disable anonymous access ##

anon-access = none

?

## Enable access control ##

authz-db = authz

7. Create trunk, branches and tags structure under testrepo

Create “template” directories with following command:

mkdir -p /tmp/svn-structure-template/{trunk,branches,tags}

Then import template to project repository using “svn import” command:

svn import -m 'Initial import' /tmp/svn-structure-template/ http://localhost/svn/testrepo/

Adding???????? /tmp/svn-structure-template/trunk

Adding???????? /tmp/svn-structure-template/branches

Adding???????? /tmp/svn-structure-template/tags

?

Committed revision 1.

Check results on browser and see testrepo revision 1:

Our forums user Will have also written guide, howto to install and configure SVN (Subversion). This is little bit different method.

?

?

读书人网 >Apache

热点推荐