美文网首页
SVN服务器更换方案

SVN服务器更换方案

作者: 伊夫_艾尔斯 | 来源:发表于2024-08-04 18:25 被阅读0次

    SVN服务器切换方法:

    更换SVN(Subversion)服务器通常包括以下几个步骤:备份数据、配置新服务器、迁移数据、测试新环境,以及将用户切换到新服务器。

    以下是一个详细的迁移方案1:

    1. 配置新服务器

    在新服务器上安装和配置SVN服务。确保新服务器的操作系统和软件环境满足SVN的运行需求。

    • SVN安装:
    
        yum install subversion
    
    
    • 数据同步:

    由于SVN数量量较大,这个方案可以慢慢传,且不影响源库使用.

    更改钩子命令: pre-revprop-change(因为svnsync要改这个库的属性,也就是要将源库的属性备份到这个库,所以要启用这个脚本):

    
      cd /path/to/repository/hooks;
      cp pre-revprop-change.tmpl pre-revprop-change;
      chmod 755 pre-revprop-change;
      vi pre-revprop-change;
      
       #将该脚本后面的三句注释掉,或者干脆将它弄成一个空文件。 即:
        # if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
        # echo "Changing revision properties other than svn:log is prohibited" >&2
        # exit 1
      
    

    初始化同步: | 命令解释: svnsync init SVN备份仓库 SVN源数据仓库

    svnsync init svn://10.0.1.48:33690/ svn://10.0.1.24:23690/  
    

    执行备份: | 执行此命令后才正式开始备份

    svnsync sync svn://10.0.1.48:33690/ 
    
    1. 同步配置:
      同步源SVN服务器的配置文件,如svnserve.conf、passwd和authz,以保留用户和权限设置。

    2. 测试新服务器

    在新服务器上测试存储库的访问和功能。

    • 连接测试:
      确保能够通过SVN客户端连接到新服务器,并能够执行常见的操作(如checkout、commit、update等)。

    • 权限测试:
      检查用户权限设置是否正确,确保不同用户可以访问他们被授权的部分

    1. 更改新SVN服务器UUID为旧服务器UUID:

    SVN服务器的UUID是SVN服务器的唯一标识符,用户数据同步,都会验证该值。


    img_3.png

    查询旧SVN服务器UUID:

        svn info svn://10.0.1.24:23690/
    

    更改新SVN服务器UUID(未填参数自动新的UUID):

        svnadmin setuuid /path/to/repository NEW_UUID
    
    1. 切换用户到新服务器

    一旦确认新服务器正常运行,可以将用户切换到新服务器, 旧服务器下线(避免有用户忘了切换导致数据提交到旧服务器)。

    更新SVN客户端配置:
    告知所有用户新服务器的地址,并指导他们如何更新他们的SVN客户端配置。

    • 进入工作目录:
      打开包含SVN工作副本的文件夹。
    • 选择Relocate选项:
      右键点击该文件夹,在弹出的菜单中选择“TortoiseSVN” -> “Relocate…”(或选择中文的“重定位”)。


      img_1.png
    • 输入新的SVN服务器地址:
      在弹出的“Relocate”对话框中,将“To URL:”字段中的旧SVN服务器地址更改为新的SVN服务器地址。确保路径的其他部分(如仓库名称、分支/标签名等)保持不变。


      img_2.png

    以下是一个详细的迁移方案2:

    1. 备份现有SVN服务器数据

    确保所有的数据和配置都得到备份,以防迁移过程中出现问题。

    • 备份存储库:
      使用svnadmin dump命令导出所有存储库。
    
      svnadmin dump /path/to/repository > repository.dump
    
    

    这将创建一个包含存储库完整历史的转储文件。

    • 备份配置文件:
      备份SVN服务器的配置文件,如svnserve.conf、passwd和authz,以保留用户和权限设置。
    1. 配置新服务器

    在新服务器上安装和配置SVN服务。确保新服务器的操作系统和软件环境满足SVN的运行需求。

    1. 恢复数据到新服务器

    将备份的数据导入到新服务器。

    • 创建新的存储库:
      使用svnadmin create命令在新服务器上创建存储库。
    
      svnadmin create /path/to/new/repository
    
    
    • 导入数据:
      使用svnadmin load命令将转储文件导入到新存储库。
    
      svnadmin load /path/to/new/repository < repository.dump
    
    
    • 恢复配置文件:

    将备份的配置文件复制到新存储库的适当位置。

    1. 测试新服务器

    在新服务器上测试存储库的访问和功能。

    • 连接测试:
      确保能够通过SVN客户端连接到新服务器,并能够执行常见的操作(如checkout、commit、update等)。

    • 权限测试:
      检查用户权限设置是否正确,确保不同用户可以访问他们被授权的部分

    1. 切换用户到新服务器

    一旦确认新服务器正常运行,可以将用户切换到新服务器, 旧服务器下线(避免有用户忘了切换导致数据提交到旧服务器)。

    更新SVN客户端配置:
    告知所有用户新服务器的地址,并指导他们如何更新他们的SVN客户端配置。

    • 进入工作目录:
      打开包含SVN工作副本的文件夹。
    • 选择Relocate选项:
      右键点击该文件夹,在弹出的菜单中选择“TortoiseSVN” -> “Relocate…”(或选择中文的“重定位”)。


      img_1.png
    • 输入新的SVN服务器地址:
      在弹出的“Relocate”对话框中,将“To URL:”字段中的旧SVN服务器地址更改为新的SVN服务器地址。确保路径的其他部分(如仓库名称、分支/标签名等)保持不变。


      img_2.png

    相关文章

      网友评论

          本文标题:SVN服务器更换方案

          本文链接:https://www.haomeiwen.com/subject/zygtkjtx.html