CentOs搭建SVN服务器

linux下搭建svn服务器的方式有两种,一种是以自带svn为服务器的一种是用apache为服务器的,本文主要介绍前一种情况,是我自己在搭建的步骤,如有问题请留言,本人小白,大神如果有意见还请指点,谢谢。

注:只记录在terminal中输入的指令 

/**
 *安装subversion
 */
 $sudo yum install subversion
 
/**
 *创建一个账户用于专门管理svn
 */
 $su
 $useradd svn
 $passwd svn
 $exit
 
/**
 *创建svn仓库
 */
 $mkdir svnrepo
 $cd svnrepo
 $svnadmin create test
 
/**
 *配置svn仓库
 */ 
 $cd test/conf/
 $vi svnserve.conf

svnserve.conf中的内容:

 

 

上图中圈红的地方是需要修改的,上图为修改后的结果。

下一步要修改和配置conf/目录下的另外两个文件:passwd 和authz 有名字就可以知道他们是分别管理svn项目成员的账户密码和用户权限的

passwd的文件内容如下:

保存并退出(按下Esc然后输入:wq))!

authz中的文件配置如下:

红圈中为要添加的内容,分别为test1用户和test2用户添加读写的权限。

保存并退出(按下Esc然后输入:wq))!

此时svn服务器已基本配置完成。下面就是要启动服务了

/**
 *启动svn服务
 */
$svnserve -d -r /home/svnrepo //如果要改变端口的话可在后面加"--listen-port 3690"

查看svn服务是否已经启动:

$ps -ef |grep svn

显示结果如下图:

之后就是添加开机启动脚本,这样就不需要我们每次启动机器的时候都要运行svnserve -d -r /home/svnrepo的指令来启动svnserve了

开机启动的方式有很多种,此处只说两种。

一种可以直接在/etc/rc.d/rc.local文件中加入下面的语句:

$/usr/bin/svnserve -d -r /home/svn/svnrepo   //如果要改变端口的话在后面加上--listen-port3690

 

如果不知道自己svn的目录的话可以用如下命令确定:

$which svnserve

或者是

第二种:在/etc/init.d/中加入自己的脚本 svnstart.sh

$touch /etc/init.d/svnstart.sh //此句可以不加
$vim /etc/init.d/svnstart.sh 

输入如下内容:

#!/bin/sh
/usr/bin/svnserve -d -r /home/svn/svnrepo  //--listen-port 3690

保存并退出。然后给文件加上写权限:

$ sudo chmod +x /etc/init.d/svnstart.sh//给文件加上可执行权限

最后在/etc/rc.d/rc.local文件中加上上面脚本的路径

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
/etc/init.d/svnstart.sh

保存并退出。即可

 

posted @ 2015-08-05 14:43  JonZone  阅读(268)  评论(0)    收藏  举报