SVN备份教程(一)
最近一段时间在项目中用到了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备份教程(一)的更多相关文章
- SVN备份教程(三)
		
上次的博文SVN备份教程(二)中,我们讲解了一下SVN定时备份的相关内容,同时我们又提出了一种新的SVN备份方案--自动备份. 1.简介 所谓自动备份,它实现的思路非常简单,就是利用SVN自带的hoo ...
 - SVN备份教程(二)
		
上次的博文中SVN备份教程(一)我们简单介绍了一下SVN备份是如何操作的,今天我们接着将上次的问题进行优化. 1.问题回顾 在讲之前,我们先来将上次的问题重申一下.之前的SVN备份存在的问题很简单,每 ...
 - [转载]SVN使用教程
		
SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subversion是什么? ...
 - SVN使用教程总结[转]
		
SVN使用教程总结 SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Sub ...
 - 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 ...
 - svn备份脚 本
		
一直用这套脚本备份,脚本主体虽不是原创,但是从网上得到后因为不能运行也进行了些修改,前两天看到有人问关于SVN备份的问题,今天又把脚本整理了一下,解决了不能循环备份多个配置库的问题.希望对大家有所帮助 ...
 - SVN备份批处理文件
		
SVN备份批处理文件,亲测可用 另外,备份文件时获取文件名%%~ni 可改为%%~nxi,以避免文件名中有“.”号时,读取不完成,将.后面的当作后缀名 需要使用hotcopy 时,可以将关键代码进行相 ...
 - 研究windows下SVN备份及还原恢复方案
		
windows下SVN备份方案 备份策略 svn备份一般采用三种方式: 1)svnadmin dump 2)svnadmin hotcopy 3)svnsync. 注意,svn备份不宜采用普通的 ...
 - SVN备份还原
		
本文是对SVN备份还原的一个简单记录 /*千万不能用VisualSVN Server PowerShell,否则在还原Load的时候会发生错误E140001,具体参考http://stackoverf ...
 
随机推荐
- 转:OpenResty最佳实践(推荐了解lua语法)
			
看点: 1. Lua 语法的说明, 排版清晰易懂. 转: https://moonbingbing.gitbooks.io/openresty-best-practices/content/lua/m ...
 - 自动化中的PageObject思想
			
谈着这个话题很大,因为我自己在自动化分层的方面做的就不是很好,最近在做java+selenium中,如果不分层去管理,代码就显得很乱,如下: 下面代码主要是做了一个登录,登录后在修改自己的一些个人信息 ...
 - 把数据库中的字符串格式转为long类型
			
背景: 在做接口时,需要把数据库中所有ID取出来,用jmter做一些数据关联,问题来了,数据库中的ID转换出来为字符型,而接口是需要使用LONG型,所以在导出来后,数据一直报类型不为long,那如何把 ...
 - Xcode编译时出现cannot run using the selected device提示
			
很多文章说这个管用: 1) Project->Info->Deployment Target->iOS Deployment Target更改为<=设备的版本号; 2) Tar ...
 - C# 每天温习一点(IEnumerable<TSource>)
			
1, IEnumerable<TSource> 多数屌丝写成 IEnumerable<T> 无论TSource还是T都代表一个意思:要枚举的对象的类型 .IEnumerab ...
 - 每天一道LeetCode--237.Delete Node in a Linked List
			
Write a function to delete a node (except the tail) in a singly linked list, given only access to th ...
 - DialogFragment
			
DialogFragment 从Android 3.0 (API level 11)开始引入,如果想在低于该版本的系统上使用,需用android.support.v4.app.DialogFragme ...
 - 修改msconfig->引导->高级选项-》最大内存为512M
			
本来想开机提速的!手贱 把 最大内存设置成了512M 结果开机悲剧了,启用了微软的自动修复也不能解决问题!最后是WIN7 PE系统下直接修复boot结果了.遇到这种问题的朋友们可以试试喔
 - DB2查看表空间大小及使用情况
			
1.SQL 查询(选择Schema为SYSPROC) SELECT SUBSTR(TABLESPACE_NAME,,) AS TBSPC_NAME, AS "TOTAL(MB)", ...
 - c# winform 点菜宝接口demo程序
			
前几天写了一篇关于c#调用 win32API的文章,有同学对点菜宝接口感兴趣,所以就把写的demo程序共享出来,大家一起讨论改进,so放百度云地址: 百度云下载地址