zoukankan      html  css  js  c++  java
  • svn库镜像

      最近项目svn资源库机器因硬件问题挂掉,之前以为raid做成功,结果等机器挂了才发现原来raid没做成功导致部分资源入库丢失,等切换svn服务器后,还需要再次做提交同步,工作量巨大!!!

      其实svn提供了主/从式镜像备份,就是master上有commit时自动同步到slave上,这样一台机器挂掉不至于提交的资源丢失。其实很简单就是通过post-commit来完成。

    假设存在project1、project2,为让project2跟project1同步。

    1、在project2的hooks目录下建立一个pre-revprop-change.bat空文件
      其中project2是目标的版本库,而project1是源版本库。其中的目标版本库必须为空,而且必须允许修订版本属性的修改,也就是在目标的版本库的hooks目录里添加一个文件pre-revprop-change.bat,内容为空即可。
    2、svnsync.exe init https://youbitian.adin.kingsoft/svn/project2 https://youbitian.adin.kingsoft/svn/project1


      做步骤1,就不会出现以下报错
    svnsync: E175002: DAV request failed; it's possible that the repository's pre-revprop-change hook either failed or is non-existent
    svnsync: E175008: At least one property change failed; repository is unchanged
    svnsync: E175002: Error setting property 'sync-lock':
    Repository has not been enabled to accept revision propchanges;
    ask the administrator to create a pre-revprop-change hook


    3、svnsync sync https://youbitian.adin.kingsoft/svn/project2

    4、在project1的hooks目录下建立post-commit.bat
    内容:
    echo off
    set SVN_HOME="D:\\Program Files\\VisualSVN Server"
    %SVN_HOME%\bin\svnsync sync --non-interactive --username=youbitian --password=xxxxxx https://youbitian.adin.kingsoft/svn/project2

  • 相关阅读:
    oracle启动的三步
    Solaris下vi的简单使用帮助
    Solaris下ftp配置(初稿待补充)
    soap笔记1
    Solaris 10 查看机器的网卡mac地址
    查看表空间名称与对应文件
    [转]Ubuntu10.04的网络配置
    [转]红帽企业版RHEL6使用Fedora13的yum源
    [转]linux忘记密码怎么办法
    [转]个人管理 - IT人士书籍推荐(已读)
  • 原文地址:https://www.cnblogs.com/coderyoyo/p/svn_sync.html
Copyright © 2011-2022 走看看