天天看点

svn更新代码g_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相关认证权限