Linux下svn服务器迁移

SVN服务器迁移方法(Windows环境) 流程就是先备份原先的svn仓库,然后拷贝到新的服务器,创建新的仓库,再加载这个备份文件即可。 阅读详情

Linux下svn服务器迁移

1.介绍迁移方式:

1.由于项目工作需要进行svn服务器的迁移,对此简要介绍svn服务器的迁移方案。
2.主要迁移方式:

  • svnadmin dump
  • svnadmin hotcopy
  • svnsync

3.【svnadmin dump】是官方推荐的备份方式。

  • 优点:比较灵活,可以全量备份也可以增量备份,并提供了版本恢复机制。
  • 缺点:如果版本比较大,如版本数增长到数万、数十万,那么dump的过程将非常慢;备份耗时,恢复更耗时;不利于快速进行灾难恢复,建议在版本数比较小的情况下使用这种备份方式。

4.【svnadmin hotcopy】只能进行全量拷贝,不能进行增量备份;

  • 优点:备份过程较快,灾难恢复也很快;如果备份机上已经搭建了svn服务,甚至不需要恢复,只需要进行简单配置即可切换到备份库上工作。
  • 缺点:比较耗费硬盘,需要有较大的硬盘支持。

5.【svnsync】直接同步源机器代码库,实际上是制作2个镜像库,当一个坏了的时候,可以迅速切换到另一个。

  • 优点:当制作成2个镜像库的时候起到双机实时备份的作用;
  • 缺点:当作为2个镜像库使用时,没办法做到“想完全抛弃今天的修改恢复到昨晚的样子”;而当作为普通备份机制每日备份时,操作又较前2种方法麻烦。

6.实际上在Linux下将svn从一台源服务器迁移到另一台目标服务器的操作过程分2步:

1)安装SVN服务端:根据源服务器的svn版本,在目标服务器安装同样版本或者相近版本的SVN;  
2)同步SVN仓库:同步源服务器的SVN代码仓库到目标服务器上。  

2.具体步骤:

由于本人目前处理的svn仓库容量也就几个G而已,所以本文就针对自己的需求以【svnadmin dump】举例进行svn的迁移介绍。

2.1安装svn

1.下面就先具体地介绍安装配置svn服务端,待操作完这一步后续在待迁移目标服务器上安装配置svn服务端就比较方便顺手了。

1.yum方式安装或者源码编译安装svn服务端。这里以yum方式安装为例(假设当前在Linux下已经切换至root用户):  
$yum install subversion	#即可安装svn服务端
$svn help				#查看svn帮助手册
$svn --version			#查看svn当前版本
2.创建svn仓库目录:
$mkdir -p /home/www/svn/web/
$svnadmin create /home/www/svn/web/
3.经【上述第二步】后在/home/www/svn/web下会生成一个svn的仓库工作空间。使用以下查看目录树:  
$tree /home/www/svn/web
4.显示的目录树类似以下结果:
[root@bogon web]# tree /home/www/svn/web
/home/www/svn/web
├── conf
│   ├── authz
│   ├── authz.bak
│   ├── passwd
│   ├── passwd.bak
│   ├── svnserve.conf
│   └── svnserve.conf.bak
├── db
│   ├── current
│   ├── format
│   ├── fsfs.conf
│   ├── fs-type
│   ├── min-unpacked-rev
│   ├── rep-cache.db
│   ├── revprops
│   │   └── 0
│   │       ├── 0
│   │       ├── 1
│   │       └── 2
│   ├── revs
│   │   └── 0
│   │       ├── 0
│   │       ├── 1
│   │       └── 2
│   ├── transactions
│   ├── txn-current
│   ├── txn-current-lock
│   ├── txn-protorevs
│   ├── uuid
│   └── write-lock
├── format
├── hooks
│   ├── post-commit.tmpl
│   ├── post-lock.tmpl
│   ├── post-revprop-change.tmpl
│   ├── post-unlock.tmpl
│   ├── pre-commit.tmpl
│   ├── pre-lock.tmpl
│   ├── pre-revprop-change.tmpl
│   ├── pre-unlock.tmpl
│   └── start-commit.tmpl
├── locks
│   ├── db.lock
│   └── db-logs.lock
└── README.txt

10 directories, 35 files
[root@bogon web]# 
5./home/www/svn/web/conf下以.conf结尾的文件:svn仓库的配置。
conf
├── authz:权限控制文件
├── authz.bak
├── passwd:帐号密码文件
├── passwd.bak
├── svnserve.conf:SVN服务配置文件
└── svnserve.conf.bak
6.编辑authz权限控制:
$vim /home/www/svn/web/conf/authz
[/]					:仓库下所有文件/文件夹
yunwei=rw			:【yunwei】用户具有读写权限
test=r				:【test】用户具有只读权限
*=					:除上述俩用户外,其他用户没有任何权限
7.编辑passwd账号密码:
$vim /home/www/svn/web/conf/passwd
[users]
yunwei=yunwei		:用户名=密码
8.编辑svnserve.coonf服务配置:
$vim /home/www/svn/web/conf/svnserve.conf
[general]
anon-access=none			:匿名用户没有访问权限
auth-access=write			:已经被授权的用户具有写权限操作的权利
password-db=passwd			:密码信息的文件路径(路径相对于本svnserve.conf而言)
authz-db=authz				:访问控制文件信息的文件路径(路径相对于本svnserve.conf而言)
realm=/home/www/svn/web/	:认证命名空间,svn会在认证提示里显示。
9.启动svn服务端:
$svnserve -d -r /home/www/svn/web  #-d:守护进程;-r:后台运行
10.查看svn进程:
$ps -ef|grep svn
11.如果想要停掉SVN服务,可以下面这样子操作:
$killall svnserve
12.【Windows客户端TortoiseSVN】连接svn服务端,进行检出获取仓库数据:
1)对话框输入地址:【svn://ip地址:端口】    
#ip地址:待检出的svn服务端ip地址	
#端口:默认3690
#这样子一来就可以用来获取这个svn服务端的仓库数据。
2)输入【用户名,如:yunwei】,【密码,如:yunwei】。即可检出。

2.准备好源服务器和目标服务器。本文假设svn源服务器:10.80.80.238,svn目标服务器:10.80.80.234,svn目标服务器已经完成了svn服务端安装。

2.2使用【svnadmin dump】迁移svn代码仓库

  • 前提说明:源服务器10.80.80.238的svn仓库目录【/home/svn/】,待操作的目标服务器10.80.80.234仓库目录【/home/www/svn/web】,俩服务器svn服务端口均使用默认端口3690。
  • 具体细节:
    1)$mkdir -p /home/linux/downloads/ #在源服务器上操作【创建目录】用于存放备份出来的仓库
    2)$svnadmin dump /home/svn/ > /home/linux/downloads/svnRepos.dump.backup
    #在源服务器备份svn仓库
    #svnRepos.dump.backup :已备份好的svn仓库
    3)使用【scp把/home/linux/downloads/svnRepos.dump.backup从源服务器传输到目标服务器】或者【sz下载至本地然后rz上传至目标服务器】。
    4)假设源服务器的仓库已经备份至目标服务器的【/home/linux/svnbackupdir/svnRepos.dump.backup】
    5)加载到目标服务器仓库:
    $svnadmin load /home/www/svn/web < /home/linux/svnbackupdir/svnRepos.dump.backup
    6)拷贝源服务器【/home/svn/conf】下的3个配置文件至目标服务器【/home/www/svn/web/conf】。
    7)启动目标服务器:
    $svnserve -d -r /home/www/svn/web/
  • 由于服务端svn的ip地址变更了导致原有的客户端如果不做配置变更那就无法连接服务端,所以客户端想要连接到目标服务器svn需进行类似如下的操作变更:
    • 1)Windows下【TortoiseSVN】对仓库目录做变更【鼠标右键】:


      【确定】完即可。
    • 2)Linux下,对客户端连接变更:

2.1)本地仓库路径:【/home/linux/downloads/svntestprojects/pro1dir/】。使用【$svn info】查看连接信息,结果类似如下(可看到源服务器ip:10.80.80.238):

[root@localhost pro1dir]# svn info
Path: .
Working Copy Root Path: /home/linux/downloads/svntestprojects/pro1dir
URL: svn://10.80.80.238
Repository Root: svn://10.80.80.238
Repository UUID: d40b338c-41be-439f-aade-8b6a1aebb690
Revision: 2
Node Kind: directory
Schedule: normal
Last Changed Author: yunwei
Last Changed Rev: 2
Last Changed Date: 2019-01-07 15:11:39 +0800 (Mon, 07 Jan 2019)



2.2)变更:
​ $svn switch --relocate svn://10.80.80.238 svn://10.80.80.234
​ #过程中输入本地【root】密码->输入目标服务器svn被授权的用户名和密码->进行验证->验证成功->接着连接到目标服务端svn即可。
​ $svn info

[root@localhost pro1dir]# svn info
Path: .
Working Copy Root Path: /home/linux/downloads/svntestprojects/pro1dir
URL: svn://10.80.80.234
Repository Root: svn://10.80.80.234
Repository UUID: d40b338c-41be-439f-aade-8b6a1aebb690
Revision: 2
Node Kind: directory
Schedule: normal
Last Changed Author: yunwei
Last Changed Rev: 2
Last Changed Date: 2019-01-07 15:11:39 +0800 (Mon, 07 Jan 2019)

3.补充:

《工具箱-SVN》SVN安装、备份、迁移教程 服务器搭建SVN,SVN无法连接主机处理、SVN备份迁移 阅读详情

相关推荐

window下迁移SVN仓库到新的windows服务器

window下迁移SVN仓库到新的windows服务器

Bertram的博客 4690

SVN使用详解(四)—— svn服务器迁移

5.输入 Svnadmin load 将要导入版本库的地址(新服务器版本库的地址) <刚才从原始服务器上拷贝的dump文件存放路径\*.dump。因为只有覆盖之后才能将之前在A上开通的分组和用户的账号密码复制到B上,否则需要重新注册分配分组和用户,这个地方大家注意一下。1.找到装有原始svn服务器,然后找到VisualSVN Server的安装目录下的bin文件夹,将其拷贝。4.打开目标服务器,找到VisualSVN Server的安装目录下的bin文件夹,将其拷贝。通知所有技术部人员停止SVN操作。

weixin_40130409的博客 5564

Linux下SVN服务器迁移(详细版)

        最近因公司测试环境需要做迁移,除了应用需要迁移外,项目中平时用到的软件都得迁,涉及到nginx,redis , active MQ ,jenkins 以及SVN。SVN的迁移涉及到了代码的同步,在网上搜了很多SVN迁移相关的文章,发现杂而乱,最终还是完成了测试环境的SVN迁移。迁移完成后,发现整个过程是非常清晰以及有序的,遂记之。                    步骤:将SV...

liangcl_2018的博客 3万+

自己经常使用的linux命令

scp, 在实验室跨服务器进行文件传输时很好用 scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 [...] [[user@]host2:]file2 举例,将当前服务器的my_file发送到另一个服务器的指定路径下,下面的ip地址就是目的服务器的地址 scp -r -p ./.

谷式谿的博客 381

Linux下搭建SVN服务器及版本库迁移

一、安装包下载 下载SVN的rpm包:http://mirrors.163.com/centos/6/os/x86_64/Packages/ 二、上传rpm包至指定目录,执行安装(注:以root用户执行此操作) #rpm -ivh example.rpm 安装rpm包并在安装过程中显示正在安装的文件信息及安装进度 [root@DEV svn]# rpm -ivh subversion...

Mr_MoJi 542

高速设计注意事项总结——MDI篇

在以太网高速通信系统中,MDI(Medium Dependent Interface,介质相关接口)是连接物理层芯片(PHY)与传输介质(如网线)的关键接口,其设计直接影响信号完整性、传输速率和抗干扰能力。本文围绕 MDI 及 RJ45 接口电路、关键参数、设计与布线要点展开,为高速以太网设计提供参考。本文包含MDI 及 RJ45 接口电路组成、电路设计注意事项、布局布线要求等内容

qq_16237389的博客 1445

linux系统下SVN迁移至一台新服务器

写在前面 本人兼职CM工作,前一阵研发中心需要更换新的服务器,需要将原服务器(linux系统)上SVN迁移至另外一台新的服务器(linux系统),已迁移完成一段时间,想简单整理一下迁移的过程,大致分为如下几步: 1)新的服务器搭建SVN环境; 2)旧的服务器SVN备份,我这里采用的是svnadmin hotcopy整库拷贝方式; 3)将备份的SVN库迁移到新服务器上; 4)为新服务器svn库指定端口,启动服务。 1、新服务器搭建SVN环境 很多linux系统安装成功后,会已安装SVN环境 所以首先执行svn

smiling880230的博客 1384

Unity动画状态机实战:Trigger和Bool参数到底怎么选?附5个常见场景解析

本文深入解析Unity动画状态机中Trigger和Bool参数的核心差异与应用场景。通过对比两者在描述瞬时事件与持续状态上的本质区别,并结合角色移动、攻击连招、跳跃落地、受击死亡及环境交互等5个实战场景,提供了清晰的选择逻辑与避坑指南,帮助开发者构建更健壮、易维护的动画逻辑。

weixin_29009501的博客 120

SVN服务器从Windows迁移到LInux

一、备份VisualSVN项目 1. 现在要使用Linux作为svn服务器,之前是在windows Server 2008上的,用的是VisualSVN, 如下图所示。 2. 现在svn中有一个项目fpp,需要将fpp这个项目导出到linux环境下。运行cmd,输入命令 svnadmin dump E:\Repositories\fpp > e:\svnbak\fpp.dump将项目...

ouyziming的博客 1520

Orange Pi 3B+刷入EmuELEC全过程:手把手教程

手把手教你如何在Orange Pi 3B+上成功刷入emuelec系统,涵盖烧录工具、镜像下载到启动设置的完整流程,让复古游戏体验轻松实现。

weixin_35732273的博客 1090

Halcon像素比例标定(误差大)-相机标定

一种简易标定: 像素比例标定,如果需要精确一些则需要在高度和宽度上都需要计算,然后求出比例系数。需要高精度标定板和相机,以及多次标定才能达到稳定的状态,这种标定简单,但是误差大。 read_image (Img0008, 'D:/00项目代码/000视觉软件/02Halocn算法20190501/04测量20190424/07_比例计算测量标定/IMG0008.jpg') rgb1_to_...

SSSS的博客 3983

Linux下SVN服务器迁移

Linux下SVN服务器迁移 Linux下SVN服务器迁移

有幸添砖java 164

UE5.5 PCGFrameWork程序化内容生成实战指南

本文是UE5.5 PCGFrameWork程序化内容生成的实战指南。详细介绍了从点云采样、DynamicMesh几何生成到子图与蓝图扩展的核心工作流。通过实战案例演示如何利用该框架高效构建丰富的程序化场景,为技术美术、独立开发者及爱好者提供从入门到进阶的系统性指引。

tea88的博客 920

服务器怎样迁移---服务器迁移篇(WindowsServer2008SVN服务器迁移到Linux)

服务器怎样迁移—服务器迁移篇(WindowsServer2008SVN服务器迁移到Linux) 由于公司Windows服务器不太稳定,最近又被黑客攻击,于是进行数据迁移 我们准备把WindowsServer2008上的数据都迁移到CentOS7上 由于数据量太大以及平台兼容性,我们舍弃部分软件,迁移一些核心的东西 由于我们的某些项目是部署在SVN上面的,于是乎,我们先来迁移SVN服务器 svn导出...

冷色调的夏天的博客 9555

YOLOv13有效涨点改进专栏目录 | 本专栏持续更新500+篇内容 | 包含各种卷积、主干网络、各种注意力机制、检测头、损失函数、小目标检测改进、二次创新模块、独家创新等几百种创新点改进

《YOLOv13改进专栏重磅更新》推出500+创新改进方案,涵盖卷积、主干网络、注意力机制、检测头等核心模块优化。专栏提供完整项目代码及答疑服务,包含YOLOv13网络结构解析、环境配置、模型训练全流程指导。内容分为八大模块:卷积优化、注意力机制、细节涨点、主干网络改进、特征融合、检测头优化、小目标检测及Mamba联合改进等,支持多种创新点组合应用,助力科研论文发表。现开放限时订阅,提供试读章节和详细技术解析。

Ai缝合怪、助力小伙伴高效发论文 3370

opencv案例实战——银行卡模式匹配识别

在之前的几篇文章中我们已经介绍了opencv的一些基础知识,本篇文章我们将结合一个案例运用之前的知识并且学习opencv中模式匹配的应用,用到的知识点如果有不清楚的可以查看上面列出来的系列文章。具体代码会放在最后。

艾醒的博客 1337

svn迁移到新服务器linux,visual svn server 迁移到新服务器

svn :visual SVN 3.5操作系统:window 7 64 bit安装下一步即可(很简单)首先,VisualSVN Server Manager,包含两个路径,一个是安装路径,例如本机:C:\Program Files\VisualSVN Server,一个是库路径,例如本机:E:\Repositories,其中,Repositories中包括各项目文件及项目信息文件,重要的项目信息文...

weixin_28911221的博客 489

SRS流媒体服务器在Windows下的安装

在之前的流媒体开发中(视频会议),我基本上使用nginx加模块的方式进行学习、测试,正式开发的时候改为服务器端用EasyDarwin,客户端用rtsp-simple-server(这些流媒体服务器的用法见我以前的博文),这样可以充分利用客户端的资源,降低服务器端的压力。在流媒体协议方案,我选择相对较快的rtsp。这个协议优点是支持UDP协议,优化好的环境下可以实现3秒以下的延迟,基本满足甲方要求,缺点就是不支持网页播放。

dgnankai的专栏 2023

svn windows迁移到linux,svn从Windows服务器上迁移到Linux上

1,进入svn的安装目录,找到bin的文件夹2,开始制作dump文件3,将dump文件通过windows共享等传到本地。然后ssh连接到Linux服务器。利用xftp上传文件到Linux服务器上4,Linux服务器上安装好svn服务;创建svn的主目录:mkdir -p /a/svn创建svn存放母本dump文件的文件夹mkdir -p /byum - y install subversionsv...

weixin_39906130的博客 251

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

windows上的svn服务器迁移到linux

一、导出版本具体迁移步骤如下:1、先将代码库通过svn dump命令备份出来,我现在需要迁移test这个代码,则命令如下:cd G:\ 因为我的版本库在g盘下svnadmin dump -r 0:HEAD svn > test.dump这样xinsi库将备份到test.dump文件中了。2、搭建linux服务器端的svn首先安装svn,装完以后创建同名的版本库1)我在...

weixin_34010949的博客 460

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

linux svn 导出日志,SVN迁移至Linux服务器实录&钩子Dump实现自动备份

吾志所向,一往无前,愈挫愈勇,再接再厉!——Ⅴ主宰实现目标:VisualSVN 迁移到LinuxSubvesion 服务器1、Linux安装Subversion,小V使用是CentOS系统,直接使用yum安装。2、Linux创建SVN目录,如:/data/svn (命令为:mkdir -p /data/svn)3、创建完成后直接启动SVN服务:svnserve -d -r /data/svn可指...

weixin_34264495的博客 842

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

在linux上搭建SVN服务器、使用命令svnsync完整迁移SVN仓库的过程及使用PHP发布SVN代码的程序

今天老板有了新项目,今天又开始部署新项目源代码至SVN上,步骤也很简单。我这里因为之前已经有几个项目了,所以SVNserver已经装过了,现在只是加个SVN项目,也简单很多。第一步:当然是创建项目了,很简单,一句命令:当然这后面跟的就是你的项目存放的地址。这一步操作之后就会在svn下面新建一个newpro目录以及其下的子目录和文件:如下比较重要的就是conf目录,里面有三个文件:authz passwd svnserve.conf。

本博客记录了从2014年以来在工作学习中遇到的技术问题、解决方法以及部分个人人生经历、经验等内容。 810

Windows SVN迁移到Linux 服务器

一、备份VisualSVN项目1. 现在要使用Linux作为svn服务器,之前是在windows Server 2008上的,用的是VisualSVN, 如下图所示。2. 现在svn中有一个项目fpp,需要将fpp这个项目导出到linux环境下。运行cmd,输入命令 svnadmin dump E:\Repositories\fpp &gt; e:\svnbak\fpp.dump将项目导出到e:\...

lee_yanyi的博客 958

linux下svn服务器迁移,SVN服务器迁移实战

背景最近SVN服务器需要迁移另一个服务器(系统:Centos6.8),使得我有机会再次实践下SVN服务器相关的操作。分两步:1. 新服务器上SVN的搭建。2. SVN数据迁移。准备工具操作系统:Centos6.8远程连接工具:SecureCRTWindows环境下使用SSH的开源图形化SFTP客户端工具:winscpsvn客户端:tortoiseSVN一、 搭建SVN(简便方法)此前写过一个SVN...

weixin_30166291的博客 488
上一篇: git用法
下一篇: python方式部署sentry
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值