linux上的svn定时备份到windows系统上

现在有两台服务器,之前用linux做svn服务器,现在需要在windows服务器上做备份!有什么方法在windows执行脚本或者其他操作能直接将linux的svn直接备份到windows上,减少对linux的操作!

你可以在 Linux 系统上执行脚本,定期备份 SVN 代码库,并将备份文件通过网络传输到 Windows 系统上。

#!/bin/bash

# The location of the SVN repository
SVN_REPO="/path/to/svn/repo"

# The location to store the backup
BACKUP_DIR="/path/to/backup/dir"

# The current date and time
DATE=`date +%Y%m%d-%H%M`

# The filename of the backup
BACKUP_FILE="$BACKUP_DIR/svn_repo_$DATE.bak"

# Dump the SVN repository
svnadmin dump $SVN_REPO > $BACKUP_FILE

# Compress the backup file
gzip $BACKUP_FILE

定期执行备份脚本。您可以使用 cron 或其他定时任务调度工具实现此目的。

将备份文件传输到 Windows 系统上。您可以使用 FTP,SCP 或其他网络传输工具实现此目的。

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇博客也许可以解决你的问题👉 :linux环境下解决SVN的冲突方法
  • 除此之外, 这篇博客: svn数据库从windows系统迁移到linux系统(及windows间迁移)中的 三、Linux下SVN的安装与配置 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    1. Linux下安装svn,这里直接利用yum命令进行安装。yum install subversion完成subversion的安装。

    2. 建立版本库目录svndata。

    mkdir /svndata

    svnserve -d -r /svndata #启动svn,设置版本库目录为/svndata

    killall svnserve #关闭svn

    3. 建立项目库

    svnadmin create /svndata/fpp

    4. 配置用户访问权限

    cd /svndata/fpp/conf

    vi svnserve.conf

    释放如下几行的注释

    anon-access=none

    auth-access=write

    password-db=passwd

    5. 增加访问用户,格式为(username = password),等号两边要加空格,否则无效。如下图,没有加空格,就一直没用:

    clip_image012

    6. 将svn设为服务。仔细阅读svn的服务脚本,/etc/init.d/svnserve, 从中可以看出svn的配置文件是/etc/sysconfig/svnserve, 我们可以在其中写自己的配置,从args参数中可以看出,它使用了OPTIONS/etc/sysconfig/svnserveOPTIONS作为服务的参数,所以我们只需要在/etc/sysconfig/svnserve中配置这个OPTIONS变量就可以了。通过如下命令便可以设置开机启动:

    chkconfig --level 35 svnserve on

    image

    image

    7. svn的命令这里不作介绍,大家自己去学习使用。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^