svnsync同步svn备份(源centos服务器地址到目的window服务器)

目标: 将当前已使用的Centos的svn(subversion)版本库 备份到 Windows Server 环境Visual SVN中

 

源(Centos)服务器地址:svn://192.168.1.1/svn/srcA

备份(Windows Server)服务器地址:svn://192.168.1.2/svn/destA

  • windows环境建立镜像版本库

1

2

3

4

5

6

7

#Visual SVN直接窗口创建版本库destA

 

# 创建钩子

将hooks/pre-revprop-change.tmpl 复制为pre-revprop-change.bat

# 编辑pre-revprop-change钩子,将最后一行的 `exit 1` 改为 `exit 0`

 

配置svnserve.conf

 

启动版本库

  • 初始化镜像库(在源服务器上)

1

#svnsync init   目的可访问地址   源版本库服务器地址   

svnsync init svn://192.168.1.2/svn/destA  file:///var/svn/project/

或者svnsync init svn://192.168.1.2/svn/destA  file:///var/svn/project/

 

  • 同步

1

2

# 同步使用这段指令

svnsync sync --non-interactive file:///var/svn/project

  • 解锁

1

2

# 删除属性 “svn:sync-lock” 于版本库版本 0

svn propdel svn:sync-lock --revprop -r 0 file:///var/svn/project/

  • 1、在要备份的机器上建立版本库:
  • 2、进入hooks目录:cd  A/hooks/
  • 3、创建pre-revprop-change文件:cp pre-revprop-change.tmpl pre-revprop-change
  • 4、修改pre-revprop-change权限:chomd +x pre-revprop-change
    5、修改文件:vi pre-revprop-change
    为 echo “Changing revision properties other than svn:log is prohibited” >&2
    exit 0(1修改为0)
  • 6、同步初步(在):
    svnsync init svn://192.168.1.2/svn/destA   svn://192.168.1.1/svn/srcA
    svnsync: Destination repository is already synchronizing from ’svn://10.10.10.1′
  • 7、实现同步:
    svnsync sync file:///home/test/svn/test –username username –password password1

在源库的hooks下面,添加post-commit 脚本

可拷贝post-commit.tmpl即   :cp post-commit.tmpl post-commit

然后把 post-commit 中,最后两行替换为

 

svnsync sync  --non-interactive svn://192.168.1.205/mu --sync-username user --sync-password user

即提交更新后,即执行同步命令,不进行交互

把post-commit 设为755权限。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值