User Tools

Site Tools


svn

저장소 생성 : http 프로토콜 사용으로 아래의 스크립트로 돌림

#!/bin/bash
svnadmin create --fs-type bdb $1
chown -R www-data.www-data $1

backup/restore

덤프 스크립트

#!/usr/bin/python
import os, sys
 
def main(rootDir):
    print os.path.realpath(rootDir)
    repolist = os.listdir(rootDir)
    repolist = map(lambda x:os.path.join(rootDir, x), repolist)
    print repolist
    repolist = filter(os.path.isdir, repolist)
    print repolist
 
    dumplist = []
    for repo in repolist:
        print '='*80
        print '  %s dump start'%repo
        dumpName = '%s.dump'%os.path.basename(repo)
        print 'svnadmin dump %s > %s'%(repo, dumpName)
        ret = os.system('svnadmin dump %s > %s'%(repo, dumpName))
        if ret == 0:
            dumplist.append(dumpName)
        else:
            sys.exit(1)
    if not dumplist:
        print 'no dump found'
        sys.exit(1)
    print 'now making tar archive'
    os.system(r'tar czvf suapapa_svndumps_`date +%Y%m%d`.tgz '\
            +(' '.join(dumplist)))
 
if __name__ == '__main__':
    main(sys.argv[1])

복구

svnadmin load {repository} < {dumpfile}

cmdline references

저장소변경

svn switch --relocate svn://addr/share/trunk/rel/efs/wipi svn://new_addr/share/trunk/rel/efs/wipi
svn.txt · Last modified: 2013/08/03 05:04 (external edit)