欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SVN版本库的简单迁移 博客分类: Java学习SVN svnsubversion 

程序员文章站 2024-02-22 19:14:04
...
项目组有两台服务器,现在要把存在服务器A上的SVN代码库(包含若干个项目的代码)迁移到服务器B上,简略记录下迁移过程.

1 首先查看服务器A上的SVN版本,远程连接A,命令行
svnserve -version
值得注意的是使用这些svn命令的前提是系统路径下添加了svn环境变量

2 接下来导出项目代码库
svnadmin dump d:\svn\project > d:\svnbak\project.dump
svnadmin dump 是svn自带的导出命令, d:\svn\project是要导出的代码库路径 d:\svnbak\project.dump 是导出文件的路径和文件名

3 在服务器B上安装svn并进行配置
下载SVN安装程序进行安装,一路next安装到缺省目录C:\Program Files\Subversion 环境变量会在安装过程中自动添加
安装完毕后命令行输入
svn help 或者 svnserve -version可以查看版本信息 说明安装完毕
接着设定目录和服务
根据需要 建立svn的目录 比如新建 E:\SvnRoot 文件夹 作为总的代码库目录
接着建立svn服务

sc create svn binPath= "C:\Program Files\Subversion\bin\svnserve.exe -service -r E:\SvnRoot" depend= Tcpip displayname= "SVN Serve" start=auto

sc create命令是windows中建立服务的,svn是服务的名字, binPath是设定svnserve的执行路径, -r E:\SvnRoot指定代码库目录,depend指定服务依赖tcpip协议, displayname设置在windos服务管理器中的显示名, start设置启动方式为随系统自启动

4 在服务器B上导入打包的代码库
使用SVN自带的命令
svnadmin load E:\SvnRoot\project < D:\Svnbak\project.dump
load命令就是导入库,之后是代码库路径 最后是导入文件的路径

5 修改配置文件
导入以后还需要修改一下配置文件 在项目的conf目录下有3个文件

authz 是配置用户权限的 可以直接复制原有代码库文件 把
[project:/]
manager=rw
user=rw
即项目名称片段下的用户组manager user权限设置成读/写 (根据实际情况修改)

passwd 是配置用户信息的 如
zhangsan=123
表示用户名zhangsan 密码 123

svnserve.conf 配置代码库属性 把下面几行代码前面的井号去掉即可
[general]
anon-access = none
auth-access = write
password-db = /opt/svn/conf/pwd.conf
authz-db = /opt/svn/conf/authz.conf

6 验证导入正确性
使用客户端连接svn库 地址形如 svn://192.168.x.x/project
能够连接并且可以提交 表示迁移完成
相关标签: svn subversion