사용자 도구

사이트 도구


linux:svn

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
linux:svn [2018/12/13 07:07] taekgulinux:svn [2025/04/15 10:05] (현재) – 바깥 편집 127.0.0.1
줄 1: 줄 1:
 ===== SVN ===== ===== SVN =====
- +  [[utils:svn|SVN Windows]] 
-  * SVN설치+==== SVN설치 ====
 <code bash> <code bash>
 sudo apt-get install subversion sudo apt-get install subversion
 </code> </code>
-  * 저장소 설정+==== 저장소 설정 ====
 <code bash> <code bash>
 sudo mkdir /home/svn sudo mkdir /home/svn
 sudo svnadmin create /home/svn/REPO sudo svnadmin create /home/svn/REPO
-sudo mkdir trunk tags branches 
 </code> </code>
-  * 계정 설정 + 
-<code bash>conf# vi svnserve.conf</code>+=== repository 권한 설정 === 
 + 
 +<code bash> 
 +# svn 그룹을 만들고 권한 설정을 한다. 
 +sudo groupadd svn 
 +sudo chgrp svn /home/svn/ 
 +sudo chmod g+w /home/svn/ 
 +sudo usermod -a -G svn 계정명 
 +</code> 
 +==== 계정 설정 ==== 
 +<code bash>/conf# vi svnserve.conf</code> 
 +<code> 
 +[general] 
 +anon-access = none 
 +auth-access = write 
 +password-db = passwd 
 +authz-db = authz 
 +</code> 
 +  * 패스워드설정 
 +<code bash> 
 +/conf# vi passwd 
 +</code> 
 +<code> 
 +[users] 
 +svnuser1 = P@ssw0rd 
 +</code> 
 +  * 사용자의 폴더 권한 설정 
 +<code bash> 
 +conf# vi authz 
 +</code> 
 +<code> 
 +svnuser1 = rw 
 +</code> 
 +===== 서비스 ===== 
 +==== 서비스등록 ==== 
 +<code bash> 
 +# cd /etc/init.d 
 +# vi svnserve 
 +</code> 
 +svnserve 파일을 생성해서 아래 내용을 입력합니다. DAEMON_ARGS="-d -r /home/svn/repos" 이 부분을 세팅하는 환경에 맞도록 수정하면 됩니다. 
 +<code bash svnserve> 
 +#! /bin/sh 
 +### BEGIN INIT INFO 
 +# Provides:          svnserve 
 +# Required-Start:    $local_fs $syslog $remote_fs 
 +# Required-Stop:     $local_fs $syslog $remote_fs 
 +# Default-Start:     2 3 4 5 
 +# Default-Stop:      0 1 6 
 +# Short-Description: Start svnserve 
 +### END INIT INFO 
 + 
 +# Author: Michal Wojciechowski <odyniec@odyniec.net> 
 + 
 +PATH=/sbin:/usr/sbin:/bin:/usr/bin 
 +DESC="svnserve" 
 +NAME=svnserve 
 +DAEMON=/usr/bin/$NAME 
 +DAEMON_ARGS="-d -r /home/svn/repos" 
 +PIDFILE=/var/run/$NAME.pid 
 +SCRIPTNAME=/etc/init.d/$NAME 
 + 
 +[ -x "$DAEMON" ] || exit 0 
 + 
 +[ -r /etc/default/$NAME ] && . /etc/default/$NAME 
 + 
 +. /lib/init/vars.sh 
 + 
 +. /lib/lsb/init-functions 
 + 
 +do_start() 
 +
 +    start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ 
 +        || return 1 
 +    start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ 
 +        $DAEMON_ARGS \ 
 +        || return 2 
 +
 + 
 +do_stop() 
 +
 +    start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME 
 +    RETVAL="$?" 
 +    [ "$RETVAL" = 2 ] && return 2 
 +    start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON 
 +    [ "$?" = 2 ] && return 2 
 +    rm -f $PIDFILE 
 +    return "$RETVAL" 
 +
 + 
 +case "$1" in 
 +  start) 
 +    [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" 
 +    do_start 
 +    case "$?" in 
 +        0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 
 +        2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; 
 +    esac 
 +    ;; 
 +  stop) 
 +    [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" 
 +    do_stop 
 +    case "$?" in 
 +        0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 
 +        2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; 
 +    esac 
 +    ;; 
 +  restart|force-reload) 
 +    log_daemon_msg "Restarting $DESC" "$NAME" 
 +    do_stop 
 +    case "$?" in 
 +      0|1) 
 +        do_start 
 +        case "$?" in 
 +            0) log_end_msg 0 ;; 
 +            1) log_end_msg 1 ;; # Old process is still running 
 +            *) log_end_msg 1 ;; # Failed to start 
 +        esac 
 +        ;; 
 +      *) 
 +        # Failed to stop 
 +        log_end_msg 1 
 +        ;; 
 +    esac 
 +    ;; 
 +  *) 
 +    echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&
 +    exit 3 
 +    ;; 
 +esac 
 + 
 +exit 0 
 +</code> 
 + 
 +위의 파일을 서비스에 등록합니다. 
 +<code bash> 
 +# update-rc.d svnserve defaults 
 +</code> 
 +서비스 시작/종료/재시작 
 +<code bash> 
 +# service svnserve start 
 +# service svnserve stop 
 +# service svnserve restart 
 +</code>
linux/svn.1544684834.txt.gz · 마지막으로 수정됨: 2025/04/15 10:05 (바깥 편집)