`

SVN 源代码库迁移

阅读更多
   最近公司的源代码服务器总是出一些小问题,为了安全,把老的SVN服务器迁移到 新的机器上。
   老的服务器是 Linux RedHat Enterprise 系统,新服务器是windows 操作系统。

一. 在windows服务器上 安装 SVN 服务

1.下载SVN
http://subversion.tigris.org/files/documents/15/47866/svn-win32-1.6.0.zip

2.安装:下载完后,将安装包解压到 E:\subversion

3.建立Repository:如在E:\svndata目录下新建 svn 源代码仓库,CMD打开命令控制台,输入以下命令,即可完成代码仓库svn的创建

E:\subversion\bin\svnadmin.exe create --fs-type fsfs e:\svndata\svn

4、配置Repository:进入Repository目录,在本文实例是 e:\svndata\svn,进入后看到 svn 下有conf目录,进入该目录,将可发现svnserve.conf和passwd两个文件,对此分别作出对应的修改和配置。 (
注意: svnserve.conf中的[general] 和 passwd 中的 [users]配置项前不能有空格, “=” 后面只能有一个空格)

5、启动SVN:打开命令窗口,键入下面启动命令,如果你安装路径与本文实例不同的话,注意修改svn安装路径和Repository路径,运行命令后,发现进程管理器中有svnserve.exe,说明配置成功。

E:\subversion\bin\svnserve.exe -d -r E:\svndata

SVN默认端口是3690,如果不幸这个端口被别的程序暂用,可以通过选项 –listen-port=绑定端口

6.SVN配置测试:

url格式为 svn://ip地址//Repository 名,在本文实例url是svn://127.0.0.1/svn

至此,SVN的配置基本上可以使用。


二、 SVN库 备份和迁移

svnadmin hotcopy方法:原设计目的估计不是用来备份的,只能进行全量拷贝,不能进行增量备份;
优点是:备份过程较快,灾难恢复也很快;如果备份机上已经搭建了svn服务,甚至不需要恢复,只需要进行简单配置即可切换到备份库上工作。

1. 备份
svnadmin hotcopy /home/svnroot/svn/ /var/tmp/svndata_20160119 –clean-logs

如果你传递–clean-logs选项,svnadmin会执行热拷贝操作,然后删除不用的Berkeley DB日志文件。
你可以在任何时候运行这个命令得到一个版本库的安全拷贝,不管其它进程是否使用这个版本库。

2. 还原
将备份好的 svndata_20160119 copy 到 目标服务器上。

E:\subversion\bin\svnadmin hotcopy /svndata_20160119 E:/svndata/svn/


三、 SVN 开机自启动服务
建立一个新文件svnSetup.bat.

输入:

sc create svnserve binpath= "\"E:\subversion\bin\svnserve.exe\" --service --root E:\svndata" displayname= "Subversion" depend= tcpip start= auto
sc start svnserve


选择以“管理员方式运行”即可。
binpath指定svnserve的路径和命令。注意其参数是--service,而不是--daemon. 不能用-d和-i,-t等参数。start= auto表示服务自动启动。注意,等于号的左边无空格,而右边必须有一个空格。
分享到:
评论

相关推荐

    SVN源代码泄露全版本Dump源码

    "SVN源代码泄露全版本Dump源码"这个标题暗示了一个完整的SVN仓库数据被泄露,其中包括了所有版本的历史记录。 在描述中提到的“全版本Dump源码”意味着泄露的数据包含了SVN仓库的完整导出,这通常是一个大型的...

    vss库迁移到SVN库的操作方法

    Visual SourceSafe(VSS)是一款由Microsoft开发的版本控制系统,而Subversion(SVN)则是一个开源的版本控制系统,被广泛用于项目协作和源代码管理。在某些情况下,用户可能需要将VSS库的数据迁移到SVN库以利用其更...

    删除SVN源代码管理

    总的来说,"删除SVN源代码管理"涉及到一系列步骤,包括服务器端仓库的删除、本地工作副本的清理以及可能的版本控制系统迁移。这是一项涉及团队协作流程的重要操作,需要谨慎对待。通过理解和执行这些步骤,你可以...

    CVS迁移SVN工具亲测可用

    `cvs2svn-2.5.0.tar.gz` 是该工具的源代码包,用户需要自行编译安装。在使用之前,确保你的环境中已经安装了Python,因为cvs2svn是用Python编写的。 **Python** Python是cvs2svn的运行环境,确保你有对应的Python...

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

    SVN(Subversion)是一种广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件的历史记录。Apache HTTP Server(通常称为Apache)则是一个流行的开源Web服务器,它也可以与SVN结合使用,提供通过HTTP或HTTPS...

    自动获取svn代码并且编译发布

    标题和描述中提到的“自动获取svn代码并且编译发布”是一种常见的持续集成(CI)实践,它涉及自动化从版本控制系统获取源代码、构建应用程序、并进行发布的过程。以下是这个流程涉及的关键知识点: 1. **Subversion ...

    SVN 代码管理插件

    SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪软件项目中的源代码更改。它允许团队成员协作开发,同时保持代码的历史记录,方便回滚到任何先前的状态。这款"SVN 代码管理插件"可能是一个安装程序...

    svn迁移到gitlab的shell批处理脚本

    6. 进入SVN源代码目录,从SVN的URL中提取项目名称。 7. 执行gitsvn clone命令,这是将SVN版本库导入Git仓库的工具,选项包括: - --no-metadata:避免将不必要的元数据(例如.svn目录)导入到Git仓库。 - --...

    SVNsync配置库同步说明

    - 这里`http://192.168.10.250/svn/zjb_ln0001_bps`是目标库的URL,`http://192.168.10.249/svn/zjb_ln0001_bps`则是源库的URL。 - 按照提示输入必要的认证信息,如root命令和源库的SVN用户名及密码。 - **完成...

    Vss2Svn migration:Vss2Svn迁移工具-开源

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

    SUSE安装新SVN,并导入之前SVN版本库操作手记

    在本文中,我们将详细探讨如何在SUSE...总的来说,SUSE上的SVN安装和迁移过程涉及多个步骤,包括安装依赖、配置编译选项、处理错误、创建新版本库以及迁移旧版本库。理解这些步骤对于成功管理和维护SVN服务器至关重要。

    SVN代码管理器

    它允许团队成员协同工作,对源代码进行有效的管理和跟踪。SVN的核心理念是记录每次文件和目录的更改历史,以便于在需要时恢复旧版本,同时避免了多人协作时可能出现的代码冲突。 在SVN代码管理器的帮助下,开发人员...

    SVN清除.svn的python代码

    在软件开发领域,版本控制系统如Subversion(SVN)扮演着至关重要的角色,它帮助开发者们管理源代码的修改历史,实现多人协作开发。然而,在某些场景下,例如将项目迁移至其他版本控制系统或进行代码打包时,我们...

    一段进行SVN备份的脚本

    SVN,全称Subversion,是一款广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件的变更历史。在IT行业中,确保数据的安全性和可恢复性至关重要,因此定期进行SVN仓库的备份是必要的工作流程之一。这段描述...

    SVN配置库备份方案

    - 数据安全:SVN配置库包含团队的所有源代码和历史版本,丢失可能导致项目停滞甚至无法恢复。 - 定期备份:定期备份可以防止意外数据丢失,如硬件故障、人为错误或恶意攻击。 2. **手动备份方法**: - `svnadmin...

    windows局域网SVN搭建初步及简单命令

    Subversion是一个版本控制系统,常用于管理软件项目的源代码,使得团队协作更为高效。 在Windows局域网中搭建SVN服务器,首先需要安装Subversion服务器软件,如VisualSVN或CollabNet Subversion Server。安装完成后...

    svn提交日志导出工具v4.6

    在软件版本控制的世界里,Subversion(简称svn)是一款广泛使用的版本控制系统,它允许开发者跟踪和管理代码的修改历史,协同工作并保持代码库的一致性。对于svn的日常管理,有一款名为“svn提交日志导出工具v4.6”...

    DelSVN 删除svn

    Subversion是一个广泛使用的版本控制系统,用于管理软件项目中的源代码和其他文件的变更。然而,有时用户可能需要卸载或移除SVN,可能是为了更新到新版本,或者因为不再需要它。 描述中提到的 "DelSVN 删除svn" ...

    svn客户端,代码托管工具

    SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同...

Global site tag (gtag.js) - Google Analytics