最近一段时间在项目中用到了SVN备份的相关内容,这里给大家做一个简单的教程,重点在于SVN备份环境的搭建过程中,大家学到的解决问题的思维方式。

1、分类

SVN备份主要分为两种:一种是远程备份,另一种是本地备份。但从实现方式上看,两种备份没有任何区别,仅仅是使用的协议有所不同而已。

2、实现

在版本库同步设置之前,首先要做的就是建立两个不同的版本库,并记录各个版本库的位置和相应的权限分配的用户名和密码。

参考实例如下:

       1)、源版本库位置:https://TGB-PC/svn/test 或 file:///F:/Repositories/test

       权限分配:admin/admin

       2)、目标版本库位置:https://TGB-PC/svn/test1 或 file:///F:/Repositories/test1

       权限分配:zs/zs

3)、进入目标版本库的hooks目录,创建【pre-revprop-change.bat】文件,该文件内容为空。

4)、进入目标版本库的hooks目录,修改【pre-revprop-change.tmpl】文件,用记事本打开该文件,把文件最后的【exit 1】改为【exit 0】。(原脚本的意思是如果修改的是svn:log属性,将允许修改,返回0;否则,不允许,返回1,我们要将它改为允许修改所有的属性,在脚本中直接返回0)

3、初始化

初始化的意义在于建立目标库和源库之间的同步关系

       命令格式: svnsync init 目标库URL 源库URL(两个URL之间有空格)

       参考如下:

       远程版本库与本地版本库初始化:svnsync init file:///F:/repositories/test1 https://TGB-PC/svn/test(会提示输入用户名和密码,这里提供的用户名和密码是可以完全读取于https://TGB-PC/svn/test的计算机密码,用户名和密码)



       同一主机远程版本库与远程版本库初始化:

              

       不同主机远程版本库与远程版本库初始化:

              

              (上述的Error并不是错误,只是一个提示,暂时忽略即可)

4、同步

命令格式: svnsync sync 目标库URL

       参考如下:

       同步本地版本库:svnsync sync file:///F:/repositories/test1

       同步远程版本库:svnsync sync https://TGB-PC/svn/test1

       (如果提示输入用户名和密码,你可以在这个命令之后加上 username 、password参数。即svnsync sync file:///F:/repositories/test1 --username username --password password)

5、优化

上述操作的命令可以通过编写脚本文件直接运行,将该批处理文件放入SVN服务器Bin目录,需要的时候双击运行即可。

       参考如下:

       文件名称:svn同步.bat

       文件内容:svnsync sync file:///F:/repositories/test1 或 svnsync sync https://TGB-PC/svn/test1

到此为止,应该说我们的SVN备份工作已经做的可以了,但是我们发现一个问题,我每次备份都需要点击bat文件,这样,对于程序员来讲就显的麻烦了。为了解决这个问题,请继续关注下一篇SVN自动备份!

SVN备份教程(一)的更多相关文章

  1. SVN备份教程(三)

    上次的博文SVN备份教程(二)中,我们讲解了一下SVN定时备份的相关内容,同时我们又提出了一种新的SVN备份方案--自动备份. 1.简介 所谓自动备份,它实现的思路非常简单,就是利用SVN自带的hoo ...

  2. SVN备份教程(二)

    上次的博文中SVN备份教程(一)我们简单介绍了一下SVN备份是如何操作的,今天我们接着将上次的问题进行优化. 1.问题回顾 在讲之前,我们先来将上次的问题重申一下.之前的SVN备份存在的问题很简单,每 ...

  3. [转载]SVN使用教程

    SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subversion是什么? ...

  4. SVN使用教程总结[转]

    SVN使用教程总结   SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Sub ...

  5. svn 备份后双机同步热备失效,提示 W200007 target server does not support atomic revision property edits svynsync:E170009

    svn 备份后双机同步热备失效,提示 W200007 target server does not support atomic revision property edits; consider u ...

  6. svn备份脚 本

    一直用这套脚本备份,脚本主体虽不是原创,但是从网上得到后因为不能运行也进行了些修改,前两天看到有人问关于SVN备份的问题,今天又把脚本整理了一下,解决了不能循环备份多个配置库的问题.希望对大家有所帮助 ...

  7. SVN备份批处理文件

    SVN备份批处理文件,亲测可用 另外,备份文件时获取文件名%%~ni 可改为%%~nxi,以避免文件名中有“.”号时,读取不完成,将.后面的当作后缀名 需要使用hotcopy 时,可以将关键代码进行相 ...

  8. 研究windows下SVN备份及还原恢复方案

    windows下SVN备份方案 备份策略 svn备份一般采用三种方式: 1)svnadmin dump  2)svnadmin hotcopy  3)svnsync.  注意,svn备份不宜采用普通的 ...

  9. SVN备份还原

    本文是对SVN备份还原的一个简单记录 /*千万不能用VisualSVN Server PowerShell,否则在还原Load的时候会发生错误E140001,具体参考http://stackoverf ...

随机推荐

  1. FZU 1686 神龙的难题 (DLX)

    神龙的难题 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status ...

  2. 初学Android: 四大组件之Activity

    1.activity (1)一个Activity通常就是一个单独的屏幕(窗口),简单来说activity就是一个交互界面,一般应用程序都要由一个或者多个activity组成. (2)Activity之 ...

  3. Html5+Css3 Banner Animation 多方位移动特效

    背景:朋友问我小米官网的mi4的特效会做吗,可能新接的一个小网站需要用到.一直有打算研究H5C3的一些效果,趁此机会,赶紧学习一下! 效果:如图 素材 HTML: <div class=&quo ...

  4. 【HTML 5或CSS3入门教程】找兼职撰写人才

    出版社要出版一套HTML 5和CSS 3方向的图书,目前急缺两名写作人员,要求1.熟悉CSS 3的各种属性,或熟悉HTML 5框架2.熟悉各种CSS代码,或熟悉各种HTML 5代码3.有写作的兴趣爱好 ...

  5. 使用AngularJS构建大型Web应用

    AngularJS是由Google创建的一种JS框架,使用它可以扩展应用程序中的HTML词汇,从而在web应用程序中使用HTML声明动态内容.在该团队工作的软件工程师Brian Ford近日撰写了一篇 ...

  6. 翻译:如何编译 Gunz 源代码

    如何编译 Gunz 源代码 本文翻译自:How to build Gunz source code 各位好,近期 Dawson 发布了 Gunz 的源代码,所以我就来做个简单的教程,来说明如何编译 G ...

  7. java web中cookie的永久创建与撤销

    一.首先是创建cookie 当在数据库中查找知道所输入的用户名和密码正确之后,就开始创建: String cb=request.getParameter("cb");//cb就是登 ...

  8. C++ sizeof操作符的用法和strlen函数的区别

    摘要:本人首先介绍了C++中sizeof操作符的用法和注意事项,其次对比了和strlen的区别和使用,方便大家在写代码的时候查阅,和面试.笔试的时候复习. 目录: sizeof的用法: sizeof和 ...

  9. JAVA_SE复习(Class)

    一.面向对象程序设计(OOP) 1.面向对象的程序设计是程序开发的一种方法.它将对象作为程序的基本单元,将程序和 数据封装其中,以提高软件的重用性.灵活性和扩展性 2.三个特征: 封装:隐藏信息 继承 ...

  10. Dao层和Service层设计

    1.Dao接口层 public interface IBaseDao<T, ID extends Serializable>{ public abstract Serializable s ...