SVN 服务器配置与备份迁移使用说明(windows)

本文详细介绍了在Windows上安装Subversion服务器、设置提交注释、配置服务开机启动,以及如何进行SVN库的备份、导出和导入操作。通过实例演示了svnadmin命令的使用,包括全量和增量备份,以及如何解决导入时的版本库文件已存在错误。

一、关于SVN服务器的安装部署

Subversion是优秀的版本控制工具,首先来下载和搭建SVN服务器.

现在Subversion已经迁移到apache网站上了,下载地址:

http://subversion.apache.org/packages.html

这是二进制文件包的下载地址,你可在左侧的导航栏找到源代码,文档的下载地址.

windows操作系统下面的二进制文件包一共有5种,如图:


       本人用的Setup-Subversion-1.8.9-1.msi服务端和TortoiseSVN客户端,不过现在网上大家推荐用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用.

      VisualSVN服务端本人暂时未使用,大家可以下载VisualSVN server使用

      启动SVN服务     

      如何设置svn服务器端的服务开机启动
      启动subversion的服务可以通过两种方式来完成

     1.第一种手动输入cmd命令,svn服务端软件服务的启动可以通过cmd命令来启动,定位到subversion的安装目录,我的机器是C:\Program Files\Subversion\bin, 输入命令 svnserve –d –r E:\SVN\Project,其中E:\SVN\Project是svn数据仓库的目录。

2.第二种把subversion的服务添加到windows服务,作为开机自动启动的服务,同样可以通过cmd命令来完成,命令如下:

sc create 服务名 binpath= “svnserve所在的目录 –service -r 版本库目录”start= auto depend= Tcpip

 如图所示

其中"binpath="后面跟的是subversion的安装目录,--service -r后面的参数是数据仓库的路径。通过这种方式就把subversion的服务作为windows自启动的服务了。

接下只要重启服务器就可以了,服务器端的subversion的服务就可以开始运行了.

二、 SVN的配置

 1. 如何设置SVN提交时必须输入注释

Windows环境

在SVN的版本库hooks路径中找到pre-commit文件,我的版本库路径为E:\SVN\Project\hooks\pre-commit.tmpl;

可以将该文件删除,重新创建pre-commit.bat批处理文件。也可以在该文件中添加下列代码

@echo off
set SVNLOOK="D:\Program Files\VisualSVN Server\bin\svnlook.exe"
setlocal
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least 10 characters
%SVNLOOK% log "%REPOS%" -t "%TXN%" | findstr ".........." > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo Empty log message not allowed. Commit aborted! 1>&2
exit 1

里面的代码还需要修改一下,找到SVN_LOOK="你svn服务端软件安装目录即可"

改完保存即可实现限制无注释提交svn了

三、SVN的备份和迁移功能

windows下如何备份导出SVN库、导入SVN库?

操作系统:Windows10,64位

SVN Server版本:Setup-Subversion-1.8.9-1

SVN Client版本:TortoiseSVN-1.14.1.29085-x64-svn-1.14.1

方法\步骤
一、目的

如何将PC1上面的F:\SVN\Project下的各个库备份到PC 2 上面的D:\SVN

如何将PC2 D:\Backup下各个库的备份文件导入到svn库下?

备份SVN库。
      将PC 1 上面的svn库备份导出到空闲磁盘 E:\Backup\,生成dump文件。

在cmd命令行里输入:
svnadmin dump F:\SVN\Project -r 0:50 > E:\Backup\20160120_0150.dump

svnadmin dump F:\SVN\Project -r 51:1000 --incremental > E:\Backup\20160120_1.dump

...

...

在备份的过程中,先导出前面几个版本的库文件,后面的是增量备份

三、导入备份库到新的SVN库下。

1.在PC2电脑D盘中新建空文件夹SVN,在SVN下建库。(svnadmin create D:\svn)将PC1的20160120_0150.dump,20160120_1.dump拷贝到PC2 的D盘backup

2.在cmd命令行里输入: 

svnadmin load  D:\SVN < D:\backup\20160120_0150.dump  

svnadmin load  D:\SVN < D:\backup\20160120_1.dump

导入文件20160120_2.dump。依次类推20160120_3.dump。

如果我们前面不使用--incremental方式导出,此处分批导入三个dump文件,则会提示错误:版本库文件已经存在。

因为我的SVN库比较大,用了几年,看了一下,有200G左右。。这样折腾迁移搞了一天,后面发现真的好笨,直接把仓库拷贝到新电脑就好,省去了这么多麻烦。。。拷贝快多了。。​

另外,如有需要软件和遇到其他问题的网友可以私信给我。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leftyu2010

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值