VisualSVN Server仓库迁移到Linux(包含所有版本, 权限,用户信息)
2015-07-09 14:51
726 查看
公司开发服务器从Windows换成CentOS,所以要把原服务都转移到Linux下,MySQL、SMB的迁移都很顺利,但是SVN的转移却遇到了些问题,花费了三天时间,走了不少弯路,现在总算解决了SVN迁移问题,记录下:
在Windows上我们是用VisualSVN Server作SVN服务的,Linux上是编译安装的subversion 1.7.7。
Windows 的SVN仓库在E:\SVNRepositories,Linux在 /data/svnrepos
第1步,导出VisualSVN仓库:svnadmin dump E:\SVNRepositories\repo1 E:\repo1.dump
第2步,在Linux端create相同名称的仓库: svnadmin create /data/svnrepos/repo1
第3步,在Linux端load Windows导出的库:
cd /data/svnrepos
svnadmin load repo1 < repo1.dump
到此为止,repo1库就导入到Linux的subversion中了,但是用户信息、权限信息还没导入(这也是我折腾很久的问题),继续:
第4步,把E:\SVNRepositories\authz 上传到 /data/svnrepos
把E:\SVNRepositories\htpasswd 复制为 passwd 并修改后上传到 /data/svnrepos
修改后的passwd格式如下(其实就是用户名 = 密码):
[users]
user1 = 123
user2 = 456
第5步,修改仓库的/conf/svnserve.conf,使它指向第4步上传的那两个文件:
[general]
anon-access = none
auth-access = write
password-db = ../../passwd
authz-db = ../../authz
到这里就完成了,用命令 svnserve -d -r /data/svnrepos/ 启动subversion服务。
这样做还有个问题是passwd文件原密码信息全丢失了,知道解决方法的请留言告诉我:)
我只用了repo1这个仓库,如果有多个仓库一样步骤,分别导出导入,并修改仓库的/conf/svnserve.conf
如果按照上述方法操作还是不行,启动svnserve时用 --log-file ./log.txt参数查看错误信息
参考了这个贴子 http://stackoverflow.com/questions/10836587/linux-how-to-set-up-global-user-passwords-groups-file-in-svn
在Windows上我们是用VisualSVN Server作SVN服务的,Linux上是编译安装的subversion 1.7.7。
Windows 的SVN仓库在E:\SVNRepositories,Linux在 /data/svnrepos
第1步,导出VisualSVN仓库:svnadmin dump E:\SVNRepositories\repo1 E:\repo1.dump
第2步,在Linux端create相同名称的仓库: svnadmin create /data/svnrepos/repo1
第3步,在Linux端load Windows导出的库:
cd /data/svnrepos
svnadmin load repo1 < repo1.dump
到此为止,repo1库就导入到Linux的subversion中了,但是用户信息、权限信息还没导入(这也是我折腾很久的问题),继续:
第4步,把E:\SVNRepositories\authz 上传到 /data/svnrepos
把E:\SVNRepositories\htpasswd 复制为 passwd 并修改后上传到 /data/svnrepos
修改后的passwd格式如下(其实就是用户名 = 密码):
[users]
user1 = 123
user2 = 456
第5步,修改仓库的/conf/svnserve.conf,使它指向第4步上传的那两个文件:
[general]
anon-access = none
auth-access = write
password-db = ../../passwd
authz-db = ../../authz
到这里就完成了,用命令 svnserve -d -r /data/svnrepos/ 启动subversion服务。
这样做还有个问题是passwd文件原密码信息全丢失了,知道解决方法的请留言告诉我:)
我只用了repo1这个仓库,如果有多个仓库一样步骤,分别导出导入,并修改仓库的/conf/svnserve.conf
如果按照上述方法操作还是不行,启动svnserve时用 --log-file ./log.txt参数查看错误信息
参考了这个贴子 http://stackoverflow.com/questions/10836587/linux-how-to-set-up-global-user-passwords-groups-file-in-svn
相关文章推荐
- Linux下JDK中文字体乱码
- SVN服务器从Windows迁移到LInux
- 云计算之路-阿里云上:Linux内核bug引起的“黑色10秒钟”
- Qt程序在windows 和 linux 下打包发布
- linux学习一
- linux C之access函数
- LAMP环境搭建(Ubuntu
- Linux ipcs命令与ipcrm命令的用法详解
- CentOS 6.6 安装Cacti
- CentOS6.4 安装GCC&G++编译器
- Linux CentOS 6.6安装JDK1.7
- Linux运维系统工程师系列---24
- linux的wc打印换行符,字和字节计数
- CentOS 6.5 服务端配置vnc-server windows客户端远程桌面访问CentOS 6.5
- linux中test的意义 又可以表示为[]
- linux_I2C学习二(裸机)
- Linux性能优化
- 什么是Linux 集群
- Linux系统启动过程详解
- nexus私服linux搭建问题