将svn的项目转移到另外一个仓库中
前几天在做一个项目的时候,因为需要,需要将Server A 上SVN仓库 repos1中的项目pro1迁移到Server B 上的SVN仓库中,首先想到的是:通过复制,但是仔细一想,这样是不可能的;然后想到的是先把项目pro1 checkout到本地,然后再 将本地的项目 import 到 ServerB的svn仓库中,但这样一来,ServerB上的SVN仓库中 就好比完全是一个新的pro1项目了,也就失去了svn管理的意义了。下面有一种方法可以解决:
(在进行下面的操作时,请注意备份仓库数据,以免操作出错,损坏数据;同时保证需要迁移的项目,都已经commit,以免丢失修改)
1.首先关闭两台服务器的svn所有服务,比如(apache、svn),(以避免在进行迁移时又有其他的用户访问提交,更新什么的...
2.将ServerA上的 项目pro1所在的仓库进行备份,使用命令:
svnadmin dump oldrepos > reposdumpfile
上面的 oldrepos 表示服务器Server1上需要备份的仓库,如:E:\svn_root\repos1;
reposdumpfile表示一个中转的文件,文件名随意;
运行完上面的命名后,文件reposdumpfile就存储了仓库oldrepos的信息和所有项目;
3.如果需要将Server A上repos1中的所有项目迁移到Server2上,则将reposdumpfile文件直接拷贝到Server2上,然后转到 步骤5;
4.如果我们只需要repos1仓库中的pro1则我们需还要对reposdumpfile文件进行过滤,命令如下:
svndumpfilter include pro1 < reposdumpfile< pro1dumpfile
上面的 include 表示 包含的意思,也就是说,将reposdumpfile中的 pro1 的项目取来放到文件 pro1dumpfile 中;如果使用 exclude 这表示相反的意思,将不是项目pro1的项目存放到文件中去;然后将pro1dumpfile文件拷贝到Server2上;
5.在Server2上运行如下命令,则完成了项目的迁移;
svnadmin load newrepos < pro1dumpfile
上面的newrepos表示:Server2电脑上的 svn仓库的路径 如:F:\svn_root\repos2;
6.最后打开svn服务,这样就成功的将项目迁移到了其他仓库中
最新文章
- idea初使用之配置使用maven仓库
- web.config connectionStrings 数据库连接字符串的解释(转载)
- 关于内核调试(Windbg)的虚拟机配置问题
- (编辑器)Jquery-EasyUI集合Kindeditor编辑器
- android的多渠道打包
- 一个1年前的T-SQL问题
- Apache Spark源码走读之13 -- hiveql on spark实现详解
- spring命名空间不需要版本号
- WPF 绑定一(数据源为控件)
- Elasticsearch aggregations API
- java常用重构优化总结--自己亲身体验
- JAVA打印类(带预览)
- 无法Debug SQL: Unable to start T-SQL Debugging. Could not attach to SQL Server process on
- JQ怎么跳出 each循环
- iOS 折线图实现
- [Leetcode]450. Delete Node in a BST
- mongodb的部署记录
- 十二.HTTPS网站安全访问实践
- C/C++中的函数指针的使用与总结
- python自动化测试入门篇-postman
热门文章
- UVA 111
- Hbase调用JavaAPI实现批量导入操作
- 区间重合判断[poj2808 校门外的树]
- 出现二个奇葩bug
- docker save docker load
- c程序设计语言第一章2
- 【转载】&ldquo;菜&rdquo;鸟理解.NET Framework(CLI,CLS,CTS,CLR,FCL,BCL)
- PHP通用分页
- Material Design (四),AppBarLayout的使用
- 线程相关函数(POSIX线程):