Linux下SVN服务器搭建(CentOS+Subversion)svn(subversion)是近年来崛起的版本管理工具,是CVS的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。svn服务器有2种运行方式:独立服务器和借助apache等web服务器。两种方式各有利弊。svn存储版本数据也有2种方式:BDB和FSFS。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
本文主要介绍SVN独立服务器的的安装和简单配置:
安装(centos下yum即可方便的完成安装)
# yum install subversion
测试安装是否成功:
# svnserve --version 回车显示版本说明安装成功
建立版本库
# mkdir /svndata 创建svn数据目录(目录可自行制定)
# svnadmin create /svndata/kuming kuming就是版本库的名字,可以改变!
配置svn配置文件(为了方便管理,这里多个库调用相同的配置文件。)
#每个版本库创建之后都会生成svnserve.conf主配文件
# vim /svndata/kuming/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = /svndata/conf/passwd
authz-db = /svndata/conf/authz
realm =kuming
# mkdir /svndata/conf
# vim /svndata/conf/passwd //svn用户配置文件
[users]
user1 = password1
user2 = password2
user3 = password3
user4 = password4
# vim /svndata/conf/authz //svn权限控制配置文件
[groups] #设置组
group1 = user1,user2 #多用户用逗号隔开
[/] #根目录权限设置(就是“kuming”这个文件夹)
user3 = rw #用户1权限是:可读写
user4 = r #用户2权限是:可读,不可写
user = #什么都没写代表没有任何权限
@group1 = rw #设置组权限
[kuming:/123] #设置根目录下“123”文件夹的权限
#说明“123”这个文件件怎么创建?这是在SVN服务器配置好之后,创建一个权限很高的用户在客户端登录SVN
#然后创建一个文件夹“123”。
启动服务器
# svnserve -d -r /svndata
-d表示以daemon方式(后台运行)运行
-r /svndata指定根目录是/svndata
关闭SVN 服务器
# killall svnserve
# ps aux | grep svnserve 查看服务,端口:3690
客户端使用的软件是TortoiseSVN
浏览方法:
打开版本库浏览器输入:svn://ip-addr/kuming/文件夹名
下面是随便折腾一个小脚本用来管理服务器的启动、重启、停止等操作
# vim svn
# chmod +x svn
#!/bin/bash
case "$1" in
start)
svnserve -d -r /svndata
svnport=`netstat -natp | grep svnserve | awk -F: '{print $4}' | awk 'NR==1'`
if [ $svnport -eq 3690 ]
then
echo "SVN Server Already Runnning. Port:3690"
else
echo "SVN Server Does Not Start"
fi
;;
reload)
svnport=`netstat -natp | grep svnserve | awk -F: '{print $4}' | awk 'NR==1'`
if [ $svnport -eq 3690 ]
then
killall svnserve && svnserve -d -r /svndata
echo "Reload OK"
else
echo "SVN Server Is Not Running"
fi
;;
stop)
killall svnserve
echo "SVN Server Has Been Stopped"
;;
status)
svnport=`netstat -natp | grep svnserve | awk -F: '{print $4}' | awk 'NR==1'`
pid=`ps aux | grep svnserve | grep -v "grep" | awk '{print $2}'`
if [ $svnport -eq 3690 ]
then
echo "SVN Server (pid:$pid) 正在运行..."
else
echo "SVN Server 停止运行..."
fi
;;
*)
echo "$0: Usage: $0 {start|status|stop|reload}"
exit 1
;;
esac
该脚本使用方法我想应该不用多说了,全文完。
分享到:
相关推荐
SVN版本管理系统的安装(CentOS+Subversion+Apache+Jsvnadmin)安装步骤
持续集成篇--SVN版本管理系统的安装(CentOS+Subversion+Apache+Jsvnadmin)安装步骤
CentOS 下 Apache + Subversion 实现版本控制
subversion在centos最小化安装所需要的rpm包,包含了执行的脚本 subversion在centos最小化安装所需要的rpm包,包含了执行的脚本
NULL 博文链接:https://sinykk.iteye.com/blog/860209
第12节svn版本管理系统的安装(centos+subversion+apache+jsvnadmin) 第13节svn版本管理系统的使用(centos+subversion+apache+jsvnadmin) 第14节maven私有库和本地库的安装与配置.... 2、高级篇 3、高可用架构 ppt...
CentOS默认的yum --install subversion ,安装的是1.6版本 安装1.7脚本
Centos7 源码安装Subversion Edge.md 存放这里,让大家下载快捷一点
本文实例讲述了Linux环境(CentOS6.7 64位)下安装subversion1.9.5的方法。分享给大家供大家参考,具体如下: 安装环境以及软件版本如下。 subversion使用1.9.5版本,服务器使用阿里云服务器,CentOS6.7(64位)。 1....
附件是:apache的一些依赖软件 + apache + subversion软件包 另外,安装方法见:http://www.phpweblog.net/richard-dong/archive/2008/12/31/6254.html
在centos6.5系统下编译安装subversion1.8.8需要的其他编译安装的安装包
centos7 下 subversion离线安装包,svn离线安装包及安装教程
CentOs7.8_x64安装Apache2.4.48+Mysql5.7.33+Redmine4.2.1+Subversion1.14.1+PHP7.3.27+SvnManager1.10,附带的所有安装文件
Centos-6.4 64位 Subversion-1.8.5 编译安装完成代码开发环境搭建
rapidsvn安装所需的全部资源包,可离线安装(gtk2和openssl的rpm包只上传了centos7版本) apr-1.5.2.tar.gz apr-util-1.5.4.tar.bz2 neon-0.29.6.tar.gz(可选,neon是subversion解析web http协议的包,视subversion...
centos使用的subversion-1.9.6.tar.gz安装包 用于版本仓库的创建和管理
centos6下subversion1.7版本安装 附带源码包 myeclipse的svn插件及 插件包
最近因为工作需要,花了一个晚上时间折腾svn,网上的教程太乱太杂,还有很多是错误的,终于搞定了,所以想着...这篇文章主要介绍了CentOS的SVN服务器搭建与自动部署全过程,需要的朋友可以参考借鉴,下面来一起看看吧。