使用svnsync备份很简单,步骤如下:
一、在备份机上创建一个空库:svnadmin create SMP
二、更改该库的钩子脚本pre-revprop-change(因为svnsync要改这个库的属性,也就是要将源库的属性备份到这个库,所以要启用这个脚本):
cd SMP/hooks;
cp pre-revprop-change.tmpl pre-revprop-change;
chmod 755 pre-revprop-change;
vi pre-revprop-change;
将该脚本后面的三句注释掉,或者干脆将它弄成一个空文件。
三、初始化,此时还没有备份任何数据:
svnsync init file:///home/backup/svn/svnsync/SMP/ http://svntest.subversion.com/repos/SMP
语法是:svnsync init {你刚创建的库url} {源库url}
注意本地url是三个斜杠的:///
四、开始备份:
svnsync sync file:///home/backup/svn/svnsync/SMP
这是就一个个版本进行备份了。
附录:
可能的报错一:
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
Failed to get lock on destination repos, currently held by 'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
svnsync: Couldn't get lock on destination repos after 10 attempts
这个时候可能属性被锁了,删掉属性:
svn propdel svn:sync-lock --revprop -r0 file:///home/backup/svn/svnsync/SMP
删除成功后,再试一遍基本就可以了。
如果反复操作都是同样错误的话,有可能是你的svn安装的有问题,重新安装一遍就好了,俺就是这样。
可能报错二、
svnsync: REPORT request failed on 'http://svn1.subversion.com/repos/Relevance'
svnsync: The requested report is unknown.
这是因为你源库的版本太低了,svnsync所需要的函数Report是svn1.4后加入的。没办法,对你的库进行升级后才能备份。
由于执行svnsync sync file:///home/backup/svn/svnsync/SMP 过程中容易出现错误一,避免中途人工干预,我写了一个脚本,来自动修复错误。脚本里面的路径自己来修改吧,我的环境是本地备份到另外一个硬盘。
- [root@smb svn_bak]# cat svnsync.sh
- #!/bin/bash
- while (:)
- do
- svnsync sync file:///svn_bak/svnbak/
- if [ $? != 0 ]
- then
- svn propdel svn:sync-lock --revprop -r0 file:///svn_bak/svnbak/
- fi
- sleep 60
- done
相关推荐
### svnsync同步增量备份详解 #### 一、概述 Subversion (SVN) 是一个广泛使用的版本控制系统,被众多开发团队用于管理源代码。在实际应用中,为了确保数据的安全性和系统的稳定性,通常需要对 SVN 仓库进行备份。...
通过`svnsync init`命令设置源仓库和目标仓库的同步关系,然后使用`svnsync sync`来执行同步操作。`svnsync`支持单向同步,即从源仓库到目标仓库,且具有幂等性,即使在同步过程中发生中断,也能在下次同步时继续从...
本文将详细介绍如何使用`svnsync`命令实现SVN服务的双机热备,以提高系统的稳定性和可靠性。 #### 双机热备原理 双机热备是指通过配置两台服务器(主服务器与备服务器),使它们能够互相备份对方的数据和服务状态...
利用svnsync同步SVN版本库,将之前主库上的SVN数据迁移到VisualSVN上,然后在实现版本库的远程自动备份,版本库备份到另一台机器上。
### SVNsync配置库同步知识点详解 #### 一、SVNsync简介 SVNsync是一款用于Subversion(简称SVN)仓库之间同步的工具。它能够帮助用户实现从一个SVN仓库到另一个SVN仓库的数据复制,这对于需要在多个服务器之间...
总的来说,Windows下的svn异地备份与还原涉及到多个层面的操作,包括本地备份、热备份和svnsync镜像备份。正确实施这些策略,可以有效地保护你的svn仓库免受意外数据损失的影响。文件"svn备份与还原.txt"很可能是...
### SVN定时同步备份知识点 #### 一、SVN同步备份概念 Subversion(简称SVN)是一种开源的版本控制系统,广泛应用于软件开发过程中对代码进行版本控制与管理。SVN同步备份是指通过一定的机制实现主版本库(源库)与...
`svnsync`是一个额外的工具,用于镜像远程SVN仓库,这在分布式环境中特别有用,可以实现远程备份或者负载均衡。 备份策略通常包括定期完全备份(比如每周一次)和每日增量备份。在发生问题时,可以使用最近的完全...
SVN1.4.6 + apache2.2.11 + tomcat 6.0.18 集成配置SVN1.4.6 + apache2.2.11 + tomcat 6.0.18 集成配置
4. 执行同步svnsync sync:使用svnsync sync命令来同步备份机的代码仓库与源代码的变化。 源机配置 1. 创建post-commit.bat文件:在hooks目录下创建一个名为post-commit.bat的文件,用于触发每次提交代码后的同步...
svn+maven+trac+nexus产品集成配置管理
在本压缩包"svn1.9.1 32+64+客户端+汉化包.zip"中,包含了适用于32位和64位操作系统的SVN 1.9.1客户端以及汉化资源,旨在为用户提供中文界面,提升使用体验。 首先,SVN 1.9.1是Subversion的一个重要版本,它引入了...
### Jenkins + SVN + Maven + Java 自动化部署详解(Windows版) #### 一、Jenkins 安装与配置 **1. Jenkins 安装** - **下载安装**: 首先,从官方网址 (https://jenkins.io/download/) 下载最新的Jenkins安装包...
Visual SVN Server 备份工具,Visual SVN 备份工具,SVN 备份工具,按天,周,月定时备份,备份文件可加密存储,过期文件可以自动删除。Visual SVN Server 企业版才能用的定时备份任务,SvnBackupApp工具即可办到。...
通过以上步骤,我们已经创建了一个自动备份SVN仓库的完整流程,包括创建备份目录、筛选仓库列表、执行热备份、修改权限和清理旧备份。将其配置为计划任务后,可以确保SVN数据的安全性,即使发生意外也能快速恢复。
使用svnsync备份很简单,步骤如下:首先确保版本库建好并且已经与Apache发生联系。然后,使用同步命令进行备份。具体命令可以根据实际环境和需求进行设置。 知识点五:遇到的问题与解决方法 在实施svn远程备份的...
最强大的Svn在Windows下实现自动全备份和增量备份,以及异地备份,一切自动化完成 1.SVN备份内容 SVN在Windows下的自动备份实现,包括: 1)SVN目录的全备份(1周或1个月备份1次,由windows计划来调度执行); 2)...
【标题】"svn-64-客户端+汉化"指的是适用于64位操作系统的Subversion(SVN)客户端软件,并且已经进行了汉化处理,即软件界面被翻译成了中文,方便中国用户使用。 【描述】描述中的重复内容"svn-64-客户端+汉化...
在给定的标题“SVN_1.9.1+汉化+VisualSVN”中,我们看到的是SVN的一个特定版本——1.9.1,它已经包含了汉化包,意味着该版本已经被翻译成中文,方便中国用户使用。同时,VisualSVN也被提及,这是一个在Microsoft ...
本文将详细解释如何配置和使用SVN自动备份,以及如何利用Windows计划任务实现定期备份。 首先,我们需要理解SVN自动备份的基本原理。这通常涉及到创建一个脚本,该脚本调用SVN的命令行工具(如`svnadmin dump`)来...