Linux上SVN服务器部署

yum install svn / subversion


vi /etc/init.d/svnserve


#! /bin/sh
#
# chkconfig: - 55 45
# description:     The svnserved daemon is a network memory cache service.
# processname: svnserve
# config: /etc/sysconfig/svnserve
# pidfile: /var/run/svnserve.pid

# Standard LSB functions
#. /lib/lsb/init-functions

# Source function library.
. /etc/init.d/functions

ROOT=/repos
PORT=1030
CONF=/repos/.authz/svnserve.conf

if [ -f /etc/sysconfig/svnserve ];then
     . /etc/sysconfig/svnserve
fi

# Check that networking is up.
. /etc/sysconfig/network

if [ "$NETWORKING" = "no" ]
then
     exit 0
fi

RETVAL=0
prog="svnserve"

start () {
     echo -n $"Starting $prog: "

     daemon --pidfile /var/run/svnserve.pid svnserve -d -r $ROOT --listen-port $PORT --config-file $CONF --pid-file /var/run/svnserve.pid
     RETVAL=$?
     echo
     [ $RETVAL -eq 0 ] && touch /var/lock/subsys/svnserve
}
stop () {
     echo -n $"Stopping $prog: "
     killproc -p /var/run/svnserve.pid /usr/bin/svnserve
     RETVAL=$?
     echo
     if [ $RETVAL -eq 0 ] ; then
         rm -f /var/lock/subsys/svnserve
         rm -f /var/run/svnserve.pid
     fi
}

restart () {
        stop
        start
}


# See how we were called.
case "$1" in
  start)
     start
     ;;
  stop)
     stop
     ;;
  status)
     status svnserve
     ;;
  restart|reload|force-reload)
     restart
     ;;
  condrestart)
     [ -f /var/lock/subsys/svnserve ] && restart || :
     ;;
  *)
     echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
     exit 1
esac

exit $?


mkdir /repos/.authz/


vi /repos/.authz/svnserve.conf


### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to this repository.  (If you only allow
### access through http: and/or file: URLs, then this file is
### irrelevant.)

### Visit for more information.

[general]
### These options control access to the repository for unauthenticated
### and authenticated users.  Valid values are "write", "read",
### and "none".  The sample settings below are the defaults.
anon-access = none
auth-access = write
### The password-db option controls the location of the password
### database file.  Unless you specify a path starting with a /,
### the file's location is relative to the directory containing
### this configuration file.
### If SASL is enabled (see below), this file will NOT be used.
### Uncomment the line below to use the default password file.
password-db = passwd.db
### The authz-db option controls the location of the authorization
### rules for path-based access control.  Unless you specify a path
### starting with a /, the file's location is relative to the the
### directory containing this file.  If you don't specify an
### authz-db, no path-based access control is done.
### Uncomment the line below to use the default authorization file.
authz-db = authz.db
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa.  The default realm
### is repository's uuid.
realm = CmsTop Repository

[sasl]
### This option specifies whether you want to use the Cyrus SASL
### library for authentication. Default is false.
### This section will be ignored if svnserve is not built with Cyrus
### SASL support; to check, run 'svnserve --version' and look for a line
### reading 'Cyrus SASL authentication is available.'
# use-sasl = true
### These options specify the desired strength of the security layer
### that you want SASL to provide. 0 means no encryption, 1 means
### integrity-checking only, values larger than 1 are correlated
### to the effective key length for encryption (e.g. 128 means 128-bit
### encryption). The values below are the defaults.
# min-encryption = 0
# max-encryption = 256


vi /repos/.authz/passwd.db


[users]
root=123123
micate=123123


vi /repos/.authz/authz.db


[groups]
super=root
dev=micate

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/pxsyg.html