Linux与Win数据同步

一、主版本库服务器配置(Linux)
1. 创建主版本库:
svnadmin create --fs-type fsfs mytest
2. 向主版本库中的hooks文件夹中添加三个脚本文件:
post-commit
{{
#!/bin/sh
SVNSYNC=/usr/local/bin/svnsync
$SVNSYNC sync > /dev/null
}}

post-revprop-change
{{
#!/bin/sh
SVNSYNC=/usr/local/bin/svnsync
$SVNSYNC copy-revprops $2 > /dev/null
}}

pre-revprop-change
{{
#!/bin/sh
exit 0
}}
二、副版本库服务器配置(Windows)
1. 开启apache服务器代理写功能模块
httpd.conf
{{
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
}}
2. 创建副版本库:
svnadmin create --fs-type fsfs mytest
3. 向副版本库中的hooks文件夹中添加一个脚本文件:
pre-revprop-change.bat
{{
exit /b 0
}}
4. 配置apache服务器
httpd.conf
{{
<Location /mytest>
DAV svn
SVNPath D:\SVN\doc\mytest
SVNMasterURI
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile D:\SVN\admin\passwd
AuthzSVNAccessFile D:\SVN\admin\authz
Require valid-user
</Location>

<Location /mytest-proxy-sync>
DAV svn
SVNPath D:\SVN\doc\mytest
Order deny,allow
Deny from all
Allow from 10.8.1.14
</Location>
}}
三、主版本库和副版本库初始化同步操作(主版本库服务器上)
1. 初始化副版本库:
svnsync init file:///usr/svnrepos/mytest
2. 同步副版本库:
svnsync sync
四、注意事项
1. 主版本库和副版本库的验证规则应该相同,其中包括用户名、密码、读写权限。
2. 在httpd.conf中副版本库应该使用单独的Location进行配置,使用SVNPath配置单独的本地路径和访问路径。不要忘记重启apache服务使配置生效。
3. 注意linux和windows系统中脚本语言和路径设置的不同。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wydsdz.html