美文网首页
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

相关文章

  • iOS svn 更换ip地址

    该项功能主要用于更换已经从svn上checkout下来的文件,因为更换内外网或服务器修改而造成的要修改文件svn地...

  • 更换svn地址

    由于公司的svn服务器更换了域名,导致很多项目都无法使用了。 使用工具更换 右键项目文件夹 TortoiseSVN...

  • Android Studio 修改SVN地址提示svn: E23

    项目中管理层有时候会因为种种原因更换新的SVN服务器地址,将原有的SVN整体移植到新的服务器上,这时候我们就需要在...

  • SVN常用命令总结

    0、更换账号: svn checkout (svn://127.0.0.1/repository) --usern...

  • 服务器新盘无法识别(Raid0)

    在运维过程中,服务器硬盘故障与更换可能是比较频繁的一个工作。或自己动手更换、或指导更换、或提供更换方案。不同的服务...

  • 服务器新盘无法识别(JBOD)

    在运维过程中,服务器硬盘故障与更换可能是比较频繁的一个工作。或自己动手更换、或指导更换、或提供更换方案。不同的服务...

  • 源代码管理工具-SVN

    一 、SVN操作 一、. 了解-SVN服务器配置 服务器环境搭建Mac 下直接配置(Mac 下安装SVN), (M...

  • 如何搭建svnadmin,一个简单的svnWEB页面

    Svn Admin是一个Java开发的管理Svn服务器的项目用户的web应用。安装好Svn服务器端好,把Svn A...

  • AndroidStuido SVN取消关联

    AndroidStuido SVN取消关联 如果我们的项目提交到SVN服务器后,我们误操作把服务器的SVN删除,就...

  • svn服务器的搭建和使用

    大纲: 1.什么是svn服务器 2.svn安装 3.svn配置 4.配置svn的服务器目录和自动同步 5.设置sv...

网友评论

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

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