Linux svn仓库备份到Windows机器上

Linux svn仓库备份到Windows机器上

1,需求说明,Linux作为主库(A),Windows作为本地备份库(B),要求每天将Linux库中的代码备份到本地

2,B机器上安装svn服务端

Linux svn仓库备份到Windows机器上

3,

4,创建一个新的svn仓库(仓库必须是新创建的而且不能有提交,更新等操作)

Linux svn仓库备份到Windows机器上

进入仓库的hooks文件夹,复制pre-revprop-change.tmpl 文件,重命名为pre-revprop-change.bat  ,编辑pre-revprop-change.bat文件  删除全部内容,输入exit 0 保存

Linux svn仓库备份到Windows机器上

5、执行同步要使用到两个命令
1、svnsync init
初始化,建立目标库和源库之间的同步关系
命令格式 svnsync init 目标库URL 源库URL
2、svnsync sync
真正的同步
命令格式 svnsync sync 目标库URL

全部操作如下图所示

Linux svn仓库备份到Windows机器上

C:\Users\Administrator>svnsync init file:///E:\lywebsite svn://39.105.111.20/lyw

Ebsite

C:\Users\Administrator>svnsync sync  file:///E:\lywebsite

执行svnsync init 时先会让你填写administrator的密码,随便输入就行

接下来输入svn的账号密码

最后执行svnsync sync ,这一步有可能也会让你输入用户名密码

可使用下面的格式,带上用户名和密码

svnsync sync file:///svn/proj1 –username username –password password

问题:

1. Repository has not been enabled to accept revision propchanges

解决方法:

Linux:

在hooks下新建pre-revprop-change文件,内容是

#!/bin/sh

exit 0;

Windows:

在hooks下新建pre-revprop-change.bat文件, 内容为空即可

2. Revprop change blocked by pre-revprop-change hook (exit code 255) with no output

解决方法:

Linux:

chmod a+x pre-revprop-change

3,svnsync: Destination HEAD (593) is not the last merged revision (592);

have you committed to the destination without using svnsync?

解决方法

svn propset --revprop -r0 svn:sync-last-merged-revision 593 file:///home/test/svn/test

上一篇:完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能


下一篇:web.xml 配置介绍