Svnsync如何实现同步,以及出现的各种问题?

1.svnsync作用

svnsync是Subversion提供的一个用于同步版本库的工具,通过svnsync同时可以达到备份SVN版本库的目的。

2.svnsync具体操作步骤

环境说明

操作系统:Windows7

工具:cmd命令行

实现方法

首先,svnsync help命令,查阅svnsync及subcommand使用方法

1、确保源库的路径正确[Source_repo_url]

2、svnadmin create [Dest_repo_url]

   确保已经创建新的目标库(若没有,需新建目标库)

3、svnsync init

   初始化,建立目标库和源库之间的同步关系
   命令格式 svnsync init [--username dest_name --password dest_pwd] 目标库URL 源库URL

2、svnsync sync
   真正的同步
   命令格式 svnsync sync 目标库URL

实例说明

以我的同步过程为实例,过程如下  

说明:项目名DemoService 两个库即服务器存在同一台电脑,只不过目标库是在快盘上。

目标库[file:///X:\Home\svn\DemoService]<普通svn服务器> 或[http://192.168.5.110:8080/svn/DemoService<ApacheSVN服务器>

源库[file:///G:\MySVN-Reposity\Reposity-DemoService]


1.进入X:\Home\svn目录,创建DemoService目标库

svnadmin create DemoService
2.修改目标库的脚本pre-revprop-change

进入X:\Home\svn\DemoService\hooks\
cd X:\Home\svn\DemoService\hooks\
新建 pre-revprop-change.bat
windows下为空即可;linux下输入#!/bin/sh exit 0
再提升pre-revprop-change.bat文件权限:chmod 775/a+x pre-revprop-change.bat
3. 初始化,建立目标库和源库之间的同步关系

svnsync init --username shendw --password shendw file:///X:\Home\svn\DemoService file:///G:\MySVN-Reposity\Reposity-DemoService
  如果运行正确,则===output:Copied properties for revision 0.

4.开始真正的同步

svnsync sync file:///X:\Home\svn\DemoService

===output:

Transmitting file data ..................
Committed revision 1.
Copied properties for revision 1.
Transmitting file data ..
Committed revision 2.
Copied properties for revision 2.

===OK,大功告成。

5.然后测试下目标库的代码

    右键目标库,选择export,选择正确的导出路径,OK。说明库同步成功。

    进入设定的Workspace,右键执行Checkout,选择url: http://192.168.5.110:8080/svn/DemoService,OK。此时项目即可看到以前的log。

遇到的问题

1.Repository has not been enabled to accept revision propchanges ?

解决方案:新建 pre-revprop-change.bat,如上

2.“svnsync: Revprop change blocked by pre-revprop-change hook (exit code 255) with output...”?

解决方案:提升pre-revprop-change.bat权限,如上

遗留问题

输入用户名和密码。我的实例中,因为在init时,输入了user信息,所以后面的没有提示输入。另外,源库是没有指定用户的,即allusers。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值