`
yianpuodiaotu
  • 浏览: 239128 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

svn的迁移及备份说明

    博客分类:
  • SVN
阅读更多

这是我的一同事整理的一篇“SVN迁移”的文章,相当漂亮、实用。记下共勉。

 

迁移步骤:
一、在192.168.53.22上安装svn1.6.3服务器:CollabNetSubversion-server-1.6.3-3.win32.exe
1、在http://www.collab.net/downloads/subversion/地址下载服务器和客户端安装包,使用用户名ww100hh,密码为我个人常用的。
2、安装服务器,按缺省配置,选择也同时安装Apache,设为系统服务,设置仓库目录为F:\svn_repository,Apache端口由80改为8080(因为22机器上的CSP tomcat占用80端口了)。
3、安装完成。
4、配置库迁移:从53.7上复制K:\svnroot\psm目录到53.22的F:\svn_repository\psm即可。如果除了迁移外,还想建新的配置库,操作如下:
1)创建仓库目录:svnadmin create C:\repos\projectname
2).修改svnserve.conf中的权限:
anon-access = read
auth-access = write
password-db = passwd
realm = projectname
5、在服务中启动CollabNet Subversion svnserve服务。(由于产品管理部暂时用不到浏览器模式,所以将服务中的CollabNet Subversion Apache置为手动并关闭即可)
6、服务器的迁移工作完成。为了避免53.7再被误使用,原53.7的psm目录转移到了k:\svnroot\Suite 版本库_bak\psm。

二、客户端重定向
1、在客户端机器上存放产品管理部svn(代码)的最顶层目录中使用右键,选择“TortoiseSVN”>>"Relocate...",打开更改svn版本库访问路径对话軭,输入更改后的路径svn://192.168.53.22/psm,然后一直确定即可。
更改前的svn访问路径
svn://192.168.53.7/psm
更改后的svn访问路径
svn://192.168.53.22/psm
2、如果过程中提示某个目录被locked了,提示你clean up,那么按提示,先在该目录下“TortoiseSVN”>>"Clean up",然后再Relocate即可。

备份步骤:

三、在53.5机器的E盘创建svn同步备份库:E:\svnroot\svn_psm_bak
1、53.5机器本身已安装有svn1.5.1,不需再安装,svn1.4以上版本支持svnsync同步命令。该机上已有一个svn库,是suite开发的,安装在D盘上,而产品管理部svn备份库要放在E盘。由于处在不同的盘符下,svn不支持共用一个系统服务,而是必须为每一个盘符分别启动1个系统服务(且各设一个端口,否则冲突)。因此需参照已有的suite库的做法,安装启动一个自己专用的系统服务。
2、首先在53.5的E盘建立一个svnroot主目录,然后创建这个新的用于备份的配置库:
svnadmin create E:\svnroot\svn_psm_bak
3、然后在53.5上创建svn系统服务,参考wiki资料:http://192.168.53.10/pages/viewpage.action?pageId=5376011。
1)打开cmd,执行如下创建命令,注意端口设为8083,执行完后,显示“[SC] CreateService 成功”:
sc create svn_psm_bak binpath= "\"C:\program files\Subversion\bin\svnserve.exe\" --service --listen-port 8083 -r E:\svnroot" displayname= "svn_psm_bak" depend= Tcpip start= auto
2)执行启动服务命令(也可直接在服务窗口操作):
net start svn_psm_bak
4、修改这个目标库的脚本:将H:\svn_psm_bak\hooks\pre-revprop-change.tmpl文件复制2个改名为pre-revprop-change和pre-revprop-change.bat,内容都改为只有1句:exit 0
5、在53.5机器上,对目标库初始化,执行完以下命令后会显示“复制版本 0 的属性”。
svnsync init file:///E:/svnroot/svn_psm_bak svn://192.168.53.22/psm --source-username your_name --source-password ***
6、执行同步,执行完以下命令后数据就开始传输。
svnsync sync file:///E:/svnroot/svn_psm_bak --source-username you_name --source-password ***
7、钩子自动同步
希望在每次提交时同步,则
1)需要在源版本库53.22增加post-commit脚本,内容如下:
echo off
set SVN_HOME="C:\Program Files\CollabNet Subversion Server"
%SVN_HOME%\svnsync sync --non-interactive svn://192.168.53.5:8083/svn_psm_bak
把以上内容存放为post-commit.bat,为保险起见也复制一个不带后缀名的post-commit文件,两文件内容相同,然后都放到53.22版本库F:\svn_repository\psm下的hooks目录下,重启svn服务。
2)需要修改备份库53.5的认证权限,让非认证用户也可以有写操作。具体是修改E:\svnroot\svn_psm_bak\conf\svnserve.conf文件,
将 # anon-access = read
改为:anon-access = write
保存后重启svn服务。
这样psm每次提交,都会引起svn_psm_bak的同步。

分享到:
评论

相关推荐

    svn备份、还原与迁移操作手册.docx

    SVN 备份、还原与迁移操作手册 SVN(Subversion)是一种版本控制系统,用于管理软件开发过程中的代码变更。备份、还原和迁移是 SVN 中三项非常重要的操作,以下是关于 SVN 备份、还原与迁移的知识点总结: 一、SVN...

    svn版本库迁移方法

    svnadmin dump /data/svn/repository > /data/repository-backup.dump #全局备份,包括数据和历史记录,repository为例,实际为库名 2、 导入新库 svnadmin create /data/svn/repos/newproject #在新的服务器上新建...

    SVN版本库无损迁移与自动备份

    该描述说明了作者对 SVN 版本库迁移和自动备份的总结,并希望与读者一起学习和进步。 标签:“SVN” 该标签表明了本文的主题与 SVN 相关。 部分内容 本文的部分内容包括两个部分:业务目标和相关指令。 业务...

    centos7 svn 迁移

    1.原始服务器备份svn svnadmin dump /usr/local/svn > /backup/svn cd /backup sz svn(到本地)

    SVN仓储数据整体迁移

    本文档详细介绍了如何进行SVN仓储数据的整体迁移,确保在新服务器上保留所有版本号和版本信息。 一、SVN仓库概述 SVN仓库是SVN系统的核心,它存储了项目的所有历史版本,包括文件和目录的更改。每个版本都有唯一的...

    svn安装和配置 库备份和迁移

    在这个主题中,我们将深入探讨SVN的安装和配置,以及如何进行库的备份和迁移。 1. SVN安装: - **Windows**:在Windows上,可以使用VisualSVN Server,它提供了一个易于使用的图形界面来管理SVN服务器。 - **...

    svn迁移脚本.rar

    首先,svn迁移通常涉及到以下几个核心步骤:备份源仓库、创建目标仓库、迁移数据以及测试验证。手动操作这些步骤不仅耗时,而且容易出错。为了提高效率和准确性,使用自动化脚本是明智的选择。"svn迁移脚本.rar"中的...

    svn资源迁移

    在进行SVN资源迁移时,确保备份源仓库是非常重要的,以防在迁移过程中出现问题。同时,与团队成员沟通,让他们知道迁移的时间窗口,以避免在迁移期间进行任何操作。此外,迁移完成后,及时通知所有用户更新他们的SVN...

    CVS迁移SVN工具亲测可用

    在进行CVS到SVN迁移时,可能需要与RCS交互来获取CVS仓库的信息。不过,这通常由cvs2svn内部处理,用户一般不需要直接操作rcs57pc1。 **UnxUpdates** `UnxUpdates` 不是标准的CVS或SVN工具,但在某些情况下,可能被...

    SVN配置库备份方案

    压缩包中的"SVN备份方案.docx"可能是详细备份方案的文档,而"script"可能是一个示例备份脚本或说明文件。阅读这些文件将进一步深入理解具体的备份流程和注意事项。 总之,SVN配置库备份是软件开发过程中的关键环节...

    一段进行SVN备份的脚本

    VSS是微软提供的一种早期版本控制系统,一些组织可能需要将VSS数据迁移到SVN,或者在两者之间进行同步。 总之,这段脚本和相关文件旨在提供一个全面的解决方案,不仅涵盖了SVN仓库的自动备份,还可能包含了数据分析...

    从CVS迁移至SVN的两种方法

    【从CVS迁移到SVN的两种方法】 ...在迁移过程中,务必备份原有CVS数据,以防止意外损失。同时,迁移后的用户培训和新工作流程的适应也是不可忽视的环节。希望这个指南能帮助你顺利完成从CVS到SVN的平滑过渡。

    vss库迁移到SVN库的工具

    同时,提到的“一会会提交具体的操作文档”意味着会有详细的步骤说明,帮助用户理解如何使用这两个工具来完成迁移过程。 标签“vss To svn”进一步明确了主题,即这是一个关于VSS到SVN转换的专题。 在压缩包子文件...

    vss库迁移到svn库

    标题中的“vss库迁移到svn库”是指将基于Visual SourceSafe(VSS)的版本控制系统中的代码库转换到Subversion(SVN)系统的过程。这个迁移过程通常是为了升级版本控制系统的功能,或者因为团队已经从VSS转向了对SVN...

    oracle数据库备份恢复和svn备份恢复

    逻辑备份通常是指使用SQL*Plus或其他工具导出数据到PL/SQL脚本或CSV格式,适用于小规模的数据迁移。 恢复方面,Oracle提供了几种恢复模式,包括完整恢复、不完全恢复和点-in-time恢复。完整恢复是指从最近的备份和...

    vss2svn使用说明vss导入subversion教程

    在进行VSS到SVN的迁移时,务必备份所有数据,因为这个过程可能会遇到不可预见的问题。此外,理解VSS和SVN之间的差异也非常重要,例如,VSS的锁定模型与SVN的乐观并发模型不同,这可能会影响到团队的工作流程。 总之...

    Vss2Svn migration:Vss2Svn迁移工具-开源

    Vss2Svn迁移工具是专门用于将Microsoft Visual SourceSafe(VSS)6的源代码管理数据迁移到Subversion(Svn)的开源解决方案。这个工具对于那些希望从VSS过渡到更现代、更开放的版本控制系统Subversion的团队来说非常...

    SVN项目迁移至git,完整版.docx

    在软件开发过程中,版本控制系统是不可或缺的工具,SVN(Subversion)和Git都是常见的版本控制软件。然而,随着Git的普及,很...在进行迁移前,确保备份好原始SVN仓库,并在非生产环境中测试整个流程,以防止数据丢失。

    Linux应用篇之centos7部署svn.docx

    服务器老化验证,且无任何备份机制,存在重大风险,且svn运行在xp系统上,运维管理不方便,为了保护公司重大资产,申请购买了一台新的Linux服务器,将svn代码从windows平台迁移到Linux平台上,除了重新部署svn服务外...

    尚硅谷SVN课件及安装包

    4. **SVN配置与管理**:讲解如何设置SVN服务器,创建用户权限,以及仓库的备份和迁移。 5. **版本控制策略**:分享最佳实践,如何有效地使用分支和标签来管理开发流程。 6. **解决冲突**:详述在多个人协作时可能...

Global site tag (gtag.js) - Google Analytics