SVN 저장소를 생성하는 쉘 스크립트 입니다.

  • SVN 버전

    • 1.9.7 (r1800392)
  • 해당 스크립트 위치

    • /home/svn
  • 스크립트
#!/bin/bash 

# @Author gentian0185 
# @Date   19.06.03 



### 상수
SVNHOST="svn://$HOST_IP" 
SVNBOT_ID="svnbot" 
SVNBOT_PASS="svnbot" 
SVN_PATH="/home/svn" 

if [ -k $1 ]; 
then 
    echo "등록할 레파지토리 명을 입력해주세요 (폴더 포함 가능)" 
    echo "ex)  svn/BOK,  SimpleProject" 
    exit 1 
fi 

SVN_MKPATH="$SVN_PATH/$1" 

while true; do 
    read -p "$SVN_MKPATH 에 레파지토리를 생성하시겠습니까? (y or n)" yn 
    case $yn in 
        [Yy]* ) break;; 
        [Nn]* ) exit;; 
        * ) echo "y or n.";; 
    esac 
done 

currPath=$(pwd) 
cd $SVN_PATH 

echo "$SVN_MKPATH 저장소 생성중..." 
echo "svnadmin create --fs-type fsfs $SVN_MKPATH" 
svnadmin create --fs-type fsfs $SVN_MKPATH 
echo "$SVN_MKPATH 저장소 생성완료" 

cd $SVN_MKPATH/conf 
echo "$(pwd) 수정 중..."



# $SVN_PATH/passwd 에 svnbot 있는지 체크하는 if 문 있으면 더욱 좋음
echo "svnbot=svnbot" >> $SVN_PATH/passwd


rm passwd

ln -s $SVN_PATH/passwd passwd 
sed -i "s/# auth-access = write/auth-access = write/g" svnserve.conf 
sed -i "s/# auth-access = read/auth-access = write/g" svnserve.conf 
sed -i "s/# password-db = passwd/password-db = passwd/g" svnserve.conf 
echo "$(pwd) 수정 완료..." 

cd $SVN_MKPATH 
echo "trunk 폴더 생성중" 
svn mkdir -m "trunk creat" --username=$SVNBOT_ID --password=$SVNBOT_PASS --non-interactive --force-log  $SVNHOST/$1/trunk 
echo "branches 폴더 생성중" 
svn mkdir -m "branches creat" --username=$SVNBOT_ID --password=$SVNBOT_PASS --non-interactive --force-log  $SVNHOST/$1/branches 
echo "tags 폴더 생성중" 
svn mkdir -m "tags creat" --username=$SVNBOT_ID --password=$SVNBOT_PASS --non-interactive --force-log  $SVNHOST/$1/tags 

echo "전체 폴더 생성완료" 
echo "저장소 생성이 완료되었습니다." 

cd $currPath 

+ Recent posts