SVN服务器安装

svn
版本管理工具

安装
yum -y install subversion

#查看版本
svnserve --version
#查看安装位置
rpm -ql subversion

创建版本库目录
mkdir -p /var/svn/repos

创建svn版本库
svnadmin create /var/svn/repos/node
#node:版本库名称

配置修改
#配置文件
/var/svn/repos/node/conf/authz
负责账号权限管理
/var/svn/repos/node/conf/passwd
负责账号和密码的用户名单管理
/var/svn/repos/node/conf/svnserve.conf
svn服务器配置文件

eg:
----------------------
用户权限配置:authz

[/]
user = rw

用户密码配置:passwd
user = password

svn配置文件:svnserve.conf
anon-access = read
auth-access = write
password-db = passwd
realm = My First Repository

END
----------------------------

防火墙
iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

启动svn
svnserve -d -r /var/svn/svnrepos
#客户端访问
svn://x.x.x.x/node

#svnserve -d -r /var/svn/svnrepos/node
客户端访问
svn://x.x.x.x

关闭svn服务
kill pid
pkill svnserve

删除版本库
find / -type d -name ".svn" | xargs rm -rf


subversion备份迁移
1、命令
svnadmin dump:用于导出整个或某个范围的修订版本
-r 1:100:表示导出版本0到版本100的修订版
--incremental:使用增量的方式导出版本

svnadmin load:用于导入版本库

重定向
svnadmin dump oldrepository > dumpfile
svnadmin load newrepository < dumpfile

合并使用
svnadmin dump oldrepositor | svnadmin load newRepository

迁移版本库(示例)
方法一:
1、svnadmin dump oldRepository > dumpfile
2、svnadmin create newRepository
3、svnadmin load newReository < dumpfile

方法二:
分批增量迁移
1、查看当前版本库最新版本号
svnlook youngest oldRepository //全路径或版本库上层路径
2、分批导出
svnadmin dump oldrepository -r 0:100 > dumpfile1
svnadmin dump oldrepository -r 101:200 --incremental > dumpfile2
svnadmin dump oldrepository -r 201:281 --incremental > dumpfile3
3、分批导入
svnadmin load newRepository < dumpfile1
svnadmin load newRepository < dumpfile2
svnadmin load newRepository < dumpfile3

方法三:
过滤版本库历史
1、全量导出版本库
svnadmin dump oldrepository > dumpfile

2、将版本库目录下的不同项目的顶级目录送进过滤器
cat dumpfile | svndumpfilter include Project1 > 1-dumpfile
cat dumpfile | svndumpfilter include Project2 > 2-dumpfile

3、导入
svnadmin create project1
svnadmin load project1 < 1-dumpfile
svnadmin create project2
svnadmin load project2 < 2-dumpfile


posted @ 2018-12-01 20:31  zyxywy  阅读(88)  评论(0编辑  收藏  举报