From a394e4126e0928ed565f1577994b4118bcc98262 Mon Sep 17 00:00:00 2001 From: "R. Steve McKown" Date: Mon, 24 Sep 2012 11:10:51 -0600 Subject: [PATCH] Add the svncreate script --- svncreate | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 svncreate diff --git a/svncreate b/svncreate new file mode 100755 index 0000000..2d72197 --- /dev/null +++ b/svncreate @@ -0,0 +1,44 @@ +#!/bin/sh +# svncreate is part of the repo_shell distribution. Please see COPYING. + +svndir=/var/lib/svn +repodir=$svndir/repositories +owner=repo + +if [ "$(whoami)" != "$owner" ]; then + echo "$0: must run as user $owner" >&2 + exit 1 +fi + +if [ $# -ne 1 ]; then + echo "usage: $0 " >&2 + exit 1 +fi + +if [ -e $repodir/$1 ]; then + echo "$0: repository $1 already exists" >&2 + exit 1 +fi + +# Create the respository +umask 027 +svnadmin create --fs-type fsfs $repodir/$1 +[ $? -ne 0 ] && exit 1 + +# Use global svnserve.conf +if [ ! -e $svndir/svnserve.conf ]; then + echo -e "[general]\nanon-access = none\nauth-access = write\nauthz-db = $svndir/global-authz.conf" > $svndir/svnserve.conf +fi +mv $repodir/$1/conf/svnserve.conf $repodir/$1/conf/svnserve.conf.orig +ln -s ../../../svnserve.conf $repodir/$1/conf/svnserve.conf + +# Use default hook scripts +mv $repodir/$1/hooks $repodir/$1/hooks.orig +ln -s ../../hooks $repodir/$1/hooks +if [ ! -d $svndir/hooks ]; then + echo "$0: WARNING: no hooks directory $svndir/hooks" >&2 +fi + +echo "Repository created. +Be sure to edit $svndir/global-authz.conf to allow user access." +exit 0 -- 2.39.2