svn的服务端搭建及使用

编    写:袁    亮
时    间:2015-01-27
说    明:svn的服务端搭建及使用

一、服务端搭建
1、svn 安装
yum install -y subversion
2、创建svn版本库
mkdir /opt/ci123/svnroot/
3、创建一个svn项目
svnadmin create /opt/ci123/svnroot/test
4、修改svn配置信息
4.1 添加账号:
vim /opt/ci123/svnroot/test/conf/passwd
root=249
4.2 账号权限
vim /opt/ci123/svnroot/test/conf/authz
[/]
root=rw
4.3 svn服务配置
vim /opt/ci123/svnroot/test/conf/svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
5、启动svn服务
svnserve -d -r /opt/ci123/svnroot/ --log-file /tmp/svn_run.log
注意启动的目录是/opt/ci123/svnroot/
日志写入到/tmp/svn_run.log,方便后期定位问题
6、客户端使用
svn co svn://192.168.0.249:3690/test
#端口号3690可以不写,默认就是这个
7、再建另外一个svn
7.1 使用:svn://192.168.0.249:3690/ciphoto
7.2 创建服务端:
svnadmin create /opt/ci123/svnroot/ciphoto
同上,修改配置信息即可
8、删除一个svn目录
rm -rf /opt/ci123/svnroot/test
慎用,不可恢复

二、shell统一管理
1、配置文件统一
cp -r /opt/ci123/svnroot/ciphoto/conf /opt/ci123/svnroot/conf2
将其中的svnserve.conf引用的passwd和auth文件引用备份出来的配置文件
2、编写创建svn的shell脚本create.sh
#!/bin/sh
#袁亮,2015-01-27
#svn创建脚本

if [ ! "$1" ] ;then #项目名不能为空
echo '请输入你需要创建的svn名'
exit
fi

if [ -d "/opt/ci123/svnroot/$1" ];then
echo '该svn已经存在,请重新输入名称'
exit
fi

echo $1"的svn正在创建中"
res=`svnadmin create /opt/ci123/svnroot/$1`
cp /opt/ci123/svnroot/conf/svnserve.conf /opt/ci123/svnroot/$1/conf/svnserve.conf
echo $1"的svn创建完成,可以通过svn://192.168.0.249/$1 checkout下来访问"
3、执行方法
sh /opt/ci123/svnroot/create.sh test

三、后台管理形式
1、有开源的项目可以直接管理(不好用)
2、也可以自己定制开发,开发也简单

四、配置文件
1、auth文件中组设定
[groups]
geek=yuanliang,root
2、auth文件中给组权限
[/]
@geek=rw
3、所有账号都有读权限
[/]
*=r

附:
1、参考文档:
http://www.cnblogs.com/Anders888/p/4167389.html
http://www.2cto.com/os/201403/282669.html

发表评论