티스토리 뷰

+ 방법 1: tar.gz로 묶어서 그대로 쓰기

+ 방법 2: svnadmin dump, svnadmin load 사용하기
[방법 1]을 사용하면 svn version이 다른 경우

Expected FS format '2'; found format '3'

와 같은 에러가 발생한다. 그래서 이런 경우에는 다음과 같이

# old server에서
svnadmin dump old-repos > dumpfile

# new server에서
svnadmin create new-repos
svnadmin load new-repos < dumpfile

해야한다. 여러 개의 repository를 옮기기 위해서는 다음의 script를 이용

$ vi dump_repos.sh

 1 #!/bin/bash
 2
 3 BASE_DIR="/svnrepos"
 4 TARGET_DIR="./dump_files"
 5
 6 for name in $(ls $BASE_DIR); do
 7     bname=$(basename $name)
 8     svnadmin dump $BASE_DIR/$bname > $TARGET_DIR/${bname}.dump
 9     echo "##### $BASE_DIR/$bname done #####"
10 done

$ vi load_repos.sh

  1 #!/bin/bash
  2
  3 BASE_DIR="./dump_files"
  4 TARGET_DIR="/svnrepos"
  5
  6 for name in $(ls $BASE_DIR); do
  7     bname=$(basename $name .dump)
  8     base=$BASE_DIR/$bname
  9     target=$TARGET_DIR/$bname
 10     svnadmin create $target
 11     svnadmin load $target < ${base}.dump
 12     echo "##### $target done #####"
 13 done

group단위로 권한을 주기 위해서 다음의 명령어를 사용한다.
$ find -exec chmod 775 {} \;

참고: http://svn.collab.net/repos/svn/trunk/notes/repos_upgrade_HOWTO

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함