CentOS SVN服务器安装配置小记
最近和一好友合作项目,意识到源码编辑之后文件的merge是一个超级挠头的问题╮(╯_╰)╭,遂想到好用的版本控制工具,也为培养自己版本管理的良好习惯吧,决定在服务器上搭一个SVN,本来挺简单一个事,结国因为一个小问题纠结了挺久,用一篇小文记录一下,也是让自己长点心把~
配置期间在网上参考了各路大神的经验,在此致谢,就不一一贴链接了~
SVN的安装
安装很简单,尤其对于CentOS这种,直接:
# yum install subversion
# yum install mod_dav_svn
不同发行版的Package安装方法参见http://subversion.apache.org/packages.html,当然,某些发行版下或者不闲麻烦可以直接源码编译安装,但是,灭霍霍霍霍~
安装完检查一下是否成功了
# svnserve --version
能正常显示版本信息就大功告成啦~
建立版本库
# svnadmin create /svn/project
/svn/project
是所建立版本仓库的路径,理论上可以为任何目录
SVN配置
进入所建立仓库的配置目录/svn/project/conf
修改文件svnserve.conf
[general]
anon-access = none //匿名访问权限
auth-access = write //认证用户权限
password-db = passwd //密码配置文件路径,默认为同目录的passwd文件
realm = SVNofMyProject //认证标记而已
去掉对应行前的#
使语句生效,切记前面不能留空格
配置用户名密码
修改与配置文件同目录的passwd
文件
[users]
usr1 = psw1
usr2 = psw2
启动SVN服务器
# svnserve -d -r /svn --listen-host 192.168.0.3
-d
表示在后台运行,-r
指定了服务器的根目录,这样在SVN客户端就可以用svn://192.168.0.3/project
来访问SVN服务器
顺便说一下,使用以下命令可以查看正在运行的SVN进程
# ps -ef | grep svn
使用命令
# killall svnserve
或
# kill -9 xxxx
来停止SVN服务器。
到此的话,在服务器上执行co应该就没什么问题了。可是其他终端通过svn可能还访问不了咱的服务器ΦωΦ
防火墙配置
SVN的默认端口是3609,要在防火墙上开放这个端口才行
# /sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT
# /sbin/service iptables save
唉,我就是栽在这了。。。最好看下eth0
这个参数,如果你的服务器刚好像我的一样有很多网卡,而且那个再用的不是eth0
的话。。就要修改一下了恩。ΦωΦ
查看网络参数可以使用
# ifconfig
到此为止咱就应该能够成功地连上远程的SVN服务器了恩,checkout可以使用
# svn co svn://192.168.0.3/project
然后按提示输入之前配置过的用户名和密码就好了。
更多的SVN命令就不在这粘贴了~