#!/bin/bash
TMP=truewhile ${TMP} do echo "1: svnserver 1.7" echo "2: svnserver 1.8" echo "3: svnserver 1.9" read -p "Please choose your country: " i case "$i" in 1) echo "Install svnserver 1.7,plasea wait...." VERSION=1.7 TMP=false;; 2) echo "Install svnserver 1.8,plasea wait...." VERSION=1.8 TMP=false;; 3) echo "Install svnserver 1.9,plasea wait...." VERSION=1.9 TMP=false;; *) echo "Please choose version" ;; esacdone#add yumecho "[WandiscoSVN]name=Wandisco SVN Repobaseurl=http://opensource.wandisco.com/centos/6/svn-${VERSION}/RPMS/$basearch/enabled=1gpgcheck=0" > /etc/yum.repos.d/wandisco-svn.repo#install svn httpdyum clean allyum install subversion httpd mod_dav_svn -y#configure snv and httpmv /etc/httpd/conf.d/subversion.conf /etc/httpd/conf.d/subversion.conf.oldecho "# WANdisco Subversion Configuration# For more information on HTTPD configuration options for Subversion please see:# http://svnbook.red-bean.com/nightly/en/svn.serverconfig.httpd.html# Please remember that when using webdav HTTPD needs read and write access your repositories.# Needed to do Subversion Apache server.LoadModule dav_svn_module modules/mod_dav_svn.so# Only needed if you decide to do "per-directory" access control.LoadModule authz_svn_module modules/mod_authz_svn.so<Location /svn> DAV svn SVNParentPath /home/svn/ AuthType Basic AuthName \"SVN Repo\" AuthUserFile /etc/httpd/conf.d/passwd AuthzSVNAccessFile /etc/httpd/conf.d/authz Require valid-user</Location>" > /etc/httpd/conf.d/subversion.confecho "### This file is an example authorization file for svnserve.### Its format is identical to that of mod_authz_svn authorization### files.### As shown below each section defines authorizations for the path and### (optional) repository specified by the section name.### The authorizations follow. An authorization line can refer to:### - a single user,### - a group of users defined in a special [groups] section,### - an alias defined in a special [aliases] section,### - all authenticated users, using the '$authenticated' token,### - only anonymous users, using the '$anonymous' token,### - anyone, using the '*' wildcard.###### A match can be inverted by prefixing the rule with '~'. Rules can### grant read ('r') access, read-write ('rw') access, or no access### ('').[aliases]# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average[groups]# harry_and_sally = harry,sally# harry_sally_and_joe = harry,sally,&joe[project:/]svnuser = rw* =# [/foo/bar]# harry = rw# &joe = r# * =# [repository:/baz/fuz]# @harry_and_sally = rw# * = r" > /etc/httpd/conf.d/authzmkdir /home/svn && svnadmin create /home/svn/project && chown -R apache:apache /home/svn#add svn userhtpasswd -bc /etc/httpd/conf.d/passwd svnuser 12344321/etc/init.d/httpd startsvnserve -d -r /home/svn/echo "http://ip/svn/project user:svnuser passwd:12344321please stop iptables or open 3690 and 80svn passwd file in /etc/httpd/conf.d/passwdadd svnuser use command \"htpasswd -b /etc/httpd/conf.d/passwd svnusername password\"" > svnserverinstall.logcat svnserverinstall.log