svn迁移及版本升级

从 1.7 迁移到 1.14 并确保数据万无一失,最稳妥的方式是 "跨版本导出/导入" (dump/load) 方案。通过 svnadmin dumpload 可以确保所有历史数据的完整迁移。迁移时导出数据用的 dump 文件,导入到新创建的空仓库中(不能事先初始化任何内容),否则会造成冲突。用户、权限配置等 conf 目录下的内容不能自动迁移,需要手动复制或重新配置。

一、停服与导出 (在老服务器上执行)

#关闭svn服务

ps -aux | grep svn

kill -9 pid
#导出

svnadmin dump /home/svn/myrepo > /tmp/myrepo.dump

二、文件传输与目标环境准备

#复制到目标服务器

scp -r /home/svn/myrepo/conf/ root@192.168.1.253:/home/tmp

scp /tmp/myrepo.dump root@192.168.1.253:/home/tmp
#目标服务器安装svn1.14版本(CentOS 7.9 默认yum源中的SVN版本是1.7,要安装1.14,需要先配置Wandisco的yum源)

vim /etc/yum.repos.d/wandisco-svn.repo
#保存wandisco-svn.repo

WandiscoSVN

name=Wandisco SVN Repo

baseurl=http://opensource.wandisco.com/centos/7/svn-1.14/RPMS/$basearch/

enabled=1

gpgcheck=0
#安装svn1.14版本

yum install -y subversion

svnserve --version

三、数据导入 (在目标服务器上执行)

#创建目录

mkdir -p /home/svn/myrepo
#创建空版本库

svnadmin create /home/svn/myrepo
#load 导入数据

svnadmin load /home/svn/myrepo < /home/tmp/myrepo.dump

四、配置迁移与服务重启

#配置文件迁移

yes | cp -rf /home/tmp/conf /home/svn/myrepo
#启动服务

svnserve -d -r /home/svn/

五、验证与切换

#历史项目切换svn地址

svn relocate svn://192.168.1.253/myrepo

相关推荐
aXin_ya3 天前
SVN使用
svn
EXI-小洲9 天前
Pycharm 使用SVN进行拉取或提交 - SVN基本使用
svn·pycharm·版本控制
EXI-小洲10 天前
MacOS IDEA将本地项目代码上传至SVN空仓库
macos·svn·intellij-idea
▍ 小太阳 ☼1 个月前
如何让Codex读svn项目
svn·chatgpt
云小逸1 个月前
【SVN 详细使用指南:从入门到团队协作】
c++·svn
曹牧2 个月前
Eclipse:SVN 回复
java·svn·eclipse
NexTunnel2 个月前
公司老项目还在 SVN,远程维护怎么做更稳?
git·svn·gitlab·远程工作·nextunnel
鱼听禅2 个月前
CentOS 源码模式配置SVNAdmin2管理SVN仓库
linux·svn·centos
_阿伟_2 个月前
SVN简单使用教程
svn
NexTunnel2 个月前
告别传统组网,也能安全访问公司 GitLab / SVN
安全·svn·gitlab