欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

利用svnsync实现SVN同步备份 博客分类: Miscellaneous SVNsvnsync同步镜像E000022 

程序员文章站 2024-03-16 23:43:58
...

1. 在备份SVN服务器上建立版本库

   svnadmin create test

2. 创建pre-revprop-change文件

    cd test/hooks/

    cp pre-revprop-change.tmpl pre-revprop-change

    chmod 755 pre-revprop-change

3. 修改pre-revprop-change文件

    vim pre-revprop-change

    将exit 1改为exit 0

4. 初始化

    svnsync init file:///var/svn/repositories/test/ http://172.17.193.117:8000/svn/test/

5. 同步

    svnsync sync file:///var/svn/repositories/test/ --username admin --password hellococo

 

同步出错E000022: Failed to get lock on destination repos解决办法

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

 

可以先连接一下目标SVN,把密码保存下来,这样就不用指定密码了,更安全。

 

利用crontab定时同步SVN, 运行crontab -e,添加如下内容:

 

0 1 * * * /sync.sh > /sync.log

 

#!/bin/sh

echo "$(date '+%m-%d-%Y %H:%M:%S') begin sync"
svn propdel svn:sync-lock --revprop -r 0 file:///home/svn/repositories/test/
svnsync sync file:///home/svn/repositories/test/ --username admin
echo "$(date '+%m-%d-%Y %H:%M:%S') end sync"