文档章节

服务器之间的svn版本库迁移工作

Jack鸿燊
 Jack鸿燊
发布于 2016/03/21 14:46
字数 439
阅读 83
收藏 8

由于之前的代码是装在一台退役的电脑上,性能已经不够用了,之前已经搭建了开发服务器,因此想把所有的svn版本库迁移到新的开发服务器上面,以下就是自己的迁移过程,供大家参考:

旧服务器:202.0.0.4

新服务器:202.0.0.28

  1. 进入旧服务器的svn目录下,svn的根目录是svnroot,所有的项目代码都在该目录下,为了实现批量迁移,写了一个shell脚本如下:

        

#!/bin/sh
cd svnroot
for name in `ls`
do
echo $name
sudo svnadmin dump /home/svnroot/$name > ../dumpdir/$name.dump
done
~

    实现的功能是将目录下所有的工程打包至sumpdir目录下,名字为项目的名字加dump后缀。执行脚本即可。

2. 进入新服务器,首先将旧服务器打包好的dump文件拷贝过来,我直接用的scp命令:

sudo scp root@202.0.0.4:/home/dumpdir/* ./dumpdir/

3. 依然在新目录下,准备将所有dump文件导入至svn版本库中,依然是写了个shell脚本

#!/bin/sh
cd dumpdir
for name in `ls`
do
str=${name%.*}
mkdir -p ../svn/$str
sudo svnadmin create ../svn/$str
sudo svnadmin load ../svn/$str < /usr/dumpdir/$name
done

    该脚本的功能是取出dumpdir中dump文件的名字(不带dump后缀)用作工程名字,创建该工程的版本库,然后将dump文件导入进去。执行脚本之后等待结束即可。

4. 验证一下是否已经迁移完毕,找个目录,执行以下svn co svn://202.0.0.28/project。成功


是不是很简单?不得不再感叹一下svn和shell的强大





© 著作权归作者所有

共有 人打赏支持
下一篇: MAC下安装gdb
Jack鸿燊
粉丝 4
博文 10
码字总数 4667
作品 0
海淀
程序员
私信 提问
加载中

评论(2)

Jack鸿燊
Jack鸿燊

引用来自“andrew_123”的评论

能不能直接拷贝文件实现迁移呢
个人认为直接拷贝应该是不行的,没有做过实验
a
andrew_123
能不能直接拷贝文件实现迁移呢
Linux下SVN客户端使用指南

svn add values/strings.xml //--添加 svn st //--查看状态 svn ci //--提交 svn ci -m "svn ci, permission" 1、 将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如......

欧阳俊文
2012/11/11
0
0
SVN常用命令

SVN(Subversion)是一个自由、开源的项目源代码版本控制工具。目前,绝大多数开源软件和企业代码管理,都使用SVN作为代码版本管理软件。 Subversion将文件存放在中心版本库里,这个版本库很...

长平狐
2013/01/06
1K
0
详解Linux命令行下常用svn命令

1、Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2、Linux命令行下往版本库中添加新的...

墙头草
2010/11/19
0
1
SVN 常用命令集合及简单用法

1、 将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn: // 192.168 . 1.1 / pro / domain 简写:svn co 2、 往版本库中添加新的文件 svn add fi...

华宰
2011/05/27
1K
0
linux下SVN CVS命令大全

1、将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2、往版本库中添加新的文件 svn addfile 例如:s...

AlphaJay
2012/02/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

rabbitmq

灰暗
29分钟前
0
0
Flink

flink HA部署 flink搭建,采用分布式部署方式,分别为A,B,C三个节点。其中A为master;A,B,C为worker。 本文使用的用户是hadoop用户(自己新建) 先决条件 Java 1.8.x or higher scala 自己使用...

-九天-
56分钟前
2
0
数据中台和传统数仓的区别

中台系统把业务层同性的算法能力,服务能力,业务能力高度集成,有效组织 ,动态规划。更好的帮助上层业务。 今天就让我们看看关于数据中台的问答吧。 1 Q : 什么是数据中台? A : 数据中台是...

hblt-j
58分钟前
4
0
Java在什么时候会出现内存泄漏

在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的,即程序以后不会再使用这些对...

群星纪元
今天
2
0
android 打开摄像头

private SurfaceHolder mHolder; private SurfaceView mSurfaceView; private Camera mCamera; mSurfaceView = (SurfaceView) this.findViewById(R.id.camsurfaceView1); mHolder = mSurface......

jingshishengxu
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部