学习笔记 如何使用svnsync命令对SVN库进行备份

开发 项目管理
本文和大家一起学习一下如何使用svnsync命令对SVN库进行备份,主要包括备份的具体步骤以及可能报错的问题讲解等内容。

本节向大家介绍一下如何使用svnsync命令对SVN库进行备份,使用svnsync备份很简单,只有四个步骤,在这里和大家简单介绍一下,希望通过本节的学习大家能够掌握使用svnsync命令对SVN库进行备份的方法。

下面是具体的备份步骤:
一、在备份机上创建一个空库:svnadmincreateSMP
二、更改该库的钩子脚本pre-revprop-change(因为svnsync要改这个库的属性,也就是要将源库的属性备份到这个库,所以要启用这个脚本):
cdSMP/hooks;
cppre-revprop-change.tmplpre-revprop-change;
chmod755pre-revprop-change;
vipre-revprop-change;
将该脚本后面的三句注释掉,或者干脆将它弄成一个空文件。
三、初始化,此时还没有备份任何数据:
svnsyncinitfile:///home/backup/svn/svnsync/SMP/http://svntest.subversion.com/repos/SMP
语法是:svnsyncinit{你刚创建的库url}{源库url}
注意本地url是三个斜杠的:///
四、开始备份SVN库:
svnsyncsyncfile:///home/backup/svn/svnsync/SMP
这是就一个个版本进行备份了。我们来看一下SVN库备份过程中可能出现的错误。
附录:
可能的报错一:
 

  1. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  2. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  3. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  4. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  5. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  6. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  7. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  8. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  9. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  10. Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'  
  11. svnsync:Couldn'tgetlockondestinationreposafter10attempts  

这个时候可能属性被锁了,删掉属性:svnpropdelsvn:sync-lock--revprop-r0file:///home/backup/svn/svnsync/SMP
删除成功后,再试一遍基本就可以了。如果反复操作都是同样错误的话,有可能是你的svn安装的有问题,重新安装一遍就好了,俺就是这样。
可能报错二、
svnsync:REPORTrequestfailedon'http://svn1.subversion.com/repos/Relevance'
svnsync:Therequestedreportisunknown.这是因为你源库的版本太低了,svnsync所需要的函数Report是svn1.4后加入的。没办法,对你的SVN库进行升级后才能备份。

 【编辑推荐】

  1. 两种常见SVN库结构简明介绍
  2. SVN库迁移及备份方法详解
  3. ApacheSVN服务器安装指导手册
  4. 实用SVN配置教程浅析
  5. SVN服务器安装指导手册
责任编辑:佚名
相关推荐

2010-05-27 14:48:45

SVN命令行使用说明

2010-05-26 14:53:28

SVN版本库自动备份

2010-06-01 18:49:19

删除SVN备份

2009-10-22 09:32:51

ghostlinux系统备份

2010-07-30 13:52:17

Flex组件

2010-06-01 19:55:30

SVN使用

2010-05-21 11:07:36

2010-05-24 10:29:51

子命令Svn reve

2010-05-28 10:49:29

SVN服务器搭建

2011-08-04 17:04:42

2019-02-28 21:20:50

MySQL备份与恢复数据库

2022-08-15 15:16:20

机器学习图片深度学习

2010-06-01 18:26:11

删除SVN

2010-05-25 10:11:06

ubuntu Grub

2010-05-26 15:07:36

SVN版本库自动备份

2010-02-02 15:48:49

Python数据库

2022-08-09 07:57:25

Linux操作系统Windows

2021-09-27 16:39:10

PythonGif压缩

2010-06-02 09:45:02

SVN学习笔记

2020-02-03 08:00:00

机器学习人工智能AI
点赞
收藏

51CTO技术栈公众号