SVN 실시간 백업
미러링 서버: 192.168.11.94
원본 서버: 192.168.11.194
서버 대칭복사 작업:
——————————————————————————————————————————————————————————
미러 서버에 대상 저장소를 만들려면 다음과 같이 하십시오.
svnadmin create/space/repos/Atest
pre-revprop-change 파일 수정(cp pre-revprop-change.tmpl pre-revprop-change)
#pre-revprop-change
#!/bin/sh
USER="$3"if [ "$USER"= "admin"]; then exit 0; fi echo "Only the svnsync user can change revprops">&2 exit 1
pre-revprop-change에 실행 가능한 권한이 있도록chmod 755 pre-revprop-change
초기화
svnsync init --username admin --paasword admin123 svn://192.168.11.94/Atest svn://192.168.11.194/Atest
데이터 동기화
svnsync sync --username admin --password admin521 svn://192.168.12.94/Atest
중간에 인터럽트를 보내면 다음 명령을 실행하고 다시 sync
svn propdel svn:sync-lock --revprop -r 0
원본 서버 작업:
——————————————————————————————————————————————————————————————
창고 아래post-commit 파일을 수정하고python에 익숙해지면 직접python이 실현됩니다
[python] view plain copy
#!/usr/bin/python
import commands
import logging
def init_log(log_level,logpath):
'''''
ro_hdlr=RotatingFileHandler(logpath, maxBytes=0,backupCount=5)
ro_hdlr.doRollover()
hdlr = logging.FileHandler(logpath)
hdlr.setFormatter(formatter)
logger.setLevel(log_level)
return logger
log=init_log(0,'/space/repos/allconfig/log/sync.log')
log.info("*"*20+repos)
output=commands.getoutput('/usr/local/subversion/bin/svnsync sync --non-interactive --username admin --password admin123 svn://192.168.11.94/'+repos)
post-commit에 실행 가능한 권한을 부여합니다.이렇게 하면 앞으로 이 프로젝트에서 누군가가 새로운 코드를 제출하면 미러 서버에 동기화할 수 있다.원본 서버가 고장나면 relocate를 사용하여 미러 서버로 전환하여 작업을 계속할 수 있지만 전환 과정에서 UUID가 잘못되었음을 알립니다. SVN 1.5 이상 버전에서는 미러 서버의 UUID를 수정할 수 있습니다.
svnadmin setuuid /var/svn/repos-new 2109a8dd-854f-0410-ad31-d604008985ab
SVN 1.4 버전에는 이 기능이 없습니다. 도구를 통해 entries 파일을 대량으로 수정할 수 있습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
svn 팁1. SVN 서버 IP 교체 2.특정 버전 가져오기 3.한 버전의 파일을 업데이트합니다. * svn: E155036: Working copy is too old (format 10, created by Subvers...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.