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
保存并退出。即可