在Windows上同步SVN代码库到备份SVN机器上ide
SVN源库IP: 192.168.0.200
SVN目标库(备份库)IP:192.168.0.62
visualSVN Server版本:VisualSVN-Server-3.9.5-x64.msi svn
一、 在目标库的机器上安装好SVN环境,尽可能与源库SVN版本一致吧,安装省略。。。
安装VisualSVN-Server-3.9.5-x64.msi须要几个地方注意下:
(1)、安装的过程当中选择标准模式吧, 建立用户个数不受限制,只是部分功能受限了但够用。
(2)、千万不要下载VisualSVN-Server 4.0以上的版本安装,由于免费只能建立15个用户。
这里默认你源库主机上已经安装过了,就无论你是否安装了,只是单独作实验的用户那就都要安装了,自行根据状况安装吧。
二、 SVN目标库主机上安装完毕后,在目标库上建立一个lx 库,而后接着在lx文件夹下的hooks文件夹里的新建个pre-revprop-change.bat。
内容以下:
echo "Changing revision properties other than svn:log is prohibited" >&2
exit 0
三、 而后进行初始化同步执行命令(在cmd下执行)
svnsync init file:///D:/Repositories/lx https://192.168.0.200:443/svn/lx/
或者
svnsync init https://192.168.0.62/svn/lx https://192.168.0.200:443/svn/lx/工具
注意第一次执行初始化,由于用到https协议会提示你是否赞成协议,选择 p 回车就可。开发工具
参考截图:ui
四、 进行项目同步命令
Svnsync sync file:///D:/Repositories/lx
或者
svnsync sync https://192.168.0.62/svn/lxurl
截图以下:orm
问题:C:\Users\Administrator>Svnsync sync file:///D:/Repositories/lx
svnsync: E170013: Unable to connect to a repository at URL 'file:///D:/Repo
ies/lx'
svnsync: E180001: Unable to open repository 'file:///D:/Repositories/lx
svnsync: E160043: Expected FS format between '1' and '7'; found format '8'blog
如果出现如上问题,
解决方法以下2种:
一、 换IP地址同步:svnsync sync https://192.168.0.62/svn/lx
二、 直接修改D:\Repositories\lx\db\format文件,为1-7之间的数值,修改个7就好。
注意不要用记事本打开,用notepad++开发工具之类的记事本打开,而后须要修改下format文件属性去掉只读后再改(修改属性Windows的右键属性就可,学计算机的人都懂的吧),否则没有权限编辑。修改完毕权限修改回来,为只读。开发
同步成功!其余新的项目也同上 相似2 、三、4 步骤操做get
后期如果要切换到目标库上使用,以防以前客户端从新update是由于uuid不同致使没法更新等问题,如果从新chectout版本改问题可无视
如果非要保持原来已经拉下来的版本文件上进行update等操做(这种状况只能是在相同的SVN域名或者IP状况下才能如此保持如出一辙的才行),那就必须把切换的目标库上对于的版本库UUID更改成以前源库上用的UUID才行。
相关查询UUID命令及修改UUID方式以下:
查询UUID命令 (t2为你的版本库路径下的项目目录)
svnlook uuid D:\Repositories\t2
源库和模板库上均可以用以上命令
如果在模板库上去查询源库的能够用
svn proplist -v --revprop -r0 https://192.168.0.62/svn/t2
显示的内容以下(参考):
Unversioned properties on revision 0:
svn:date
2019-06-21T02:09:13.987543Z
svn:sync-from-url
https://192.168.0.200/svn/t2
svn:sync-from-uuid
27b48cb4-c766-3641-acf0-8e242da8b4b8
svn:sync-last-merged-rev
1
修改UUID的命令为:C:\Users\Administrator> svnadmin setuuid D:\Repositories\t2 27b48cb4-c766-3641-acf0-8e242da8b4b8注意:只能在目标库CMD上执行修改UUID命令最好在以前的