Skip to content


windows下svn1.5.4升级至svn1.7.7简明纪要

原始svn版本安装在xp下基于apache,曾经从 1.4.3升至1.5.4
客户端为
TortoiseSVN-1.4.3.8645-win32-svn-1.4.3.msi

1.准备svn
http://subversion.apache.org
Subversion 1.7.7 + Apache Server (Windows 32-bit)
http://tortoisesvn.net/
TortoiseSVN-1.7.10.23359-win32-svn-1.7.7.msi

2.备份原svn
backup.bat

echo off
rem Subversion的安装目录
set SVN_HOME=”D:\Subversion”
rem 所有版本库的父目录
set SVN_ROOT=D:\svnroot
rem 备份的目录
set BACKUP_SVN_ROOT=D:\svnrootbak
set BACKUP_DIRECTORY=%BACKUP_SVN_ROOT%\%date:~0,10%
if exist %BACKUP_DIRECTORY% goto checkBack
echo 建立备份目录%BACKUP_DIRECTORY%>>%SVN_ROOT%/backup.log
mkdir %BACKUP_DIRECTORY%
rem 验证目录是否为版本库,如果是则取出名称备份
for /r %SVN_ROOT% %%I in (.) do @if exist “%%I\conf\svnserve.conf” %SVN_ROOT%\simplebackup.bat “%%~fI” %%~nI
goto end
:checkBack
echo 备份目录%BACKUP_DIRECTORY%已经存在,请清空。
goto end
:end

simplebackup.bat

@echo 正在备份版本库%1……
@%SVN_HOME%\bin\svnadmin hotcopy %1 %BACKUP_DIRECTORY%\%2
@echo 版本库%1成功备份到了%2!

用svn hotcopy命今热备,导出的结构和原始文件是一样的,dump方式太慢了;
拷贝到svn库目录下运行backup.bat;
注意svnadmin路径,错误路径会报”发现格式4″,并且没有format文件,不能升级
打包后传到新机器上

3.新svn服务器
解压,并保持和原有目录一致
安装svn服务
在命令行下

[路径]svn upgrade 每个库路径

客户端执行update时报
Not authorized to open root of edit operation

服务器端accessfile文件加上”* = r”可能解决,但所有人都会有check out 权限

[/]
* = r

在apache的httpd.conf加入相关认证解决权限问题

# 用户认证….
Order allow,deny
deny from all

4.客户端升级
在客户端关闭不相关程序,安装TortoiseSVN然后重启
在原目录copy上点右键没有更新操作了,只有“SVN升级工作副本”,升级后就能执行日常操作
ubversion 1.7最让我喜欢的一个改变是.svn目录只存在于根目录了。

===================
2012-11-30更新apache的httpd.conf相关认证权限

Posted in Subversion.

Tagged with , , .


No Responses (yet)

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.